ArrayList检索对象的值

时间:2010-11-24 12:00:56

标签: c# arraylist

这是在主类中的静态void方法中进行的。 (用于输入的类)。

private static void Input(ArrayList list)
{
   //other code...

   Object b = new Object(number, hour, minutes, seconds);
   list.Add(b)
}

接下来,我有另一个静态void方法来显示其中的对象。 问题是我想将它们分组在数字上,然后在彼此之下显示相同数字的所有小时,分钟和秒。 然后是以下数字,其中包含相应的小时,分​​钟和秒。

但我不知道如何获得数字,例如第一个数组,第二个等等。

我该如何访问?下面的语法不起作用,也不确定如何检索此值。

int var = array[0].number; //does not work

另外,我如何再次制作此对象的实例?我不能再使用新的吗?

 private static void Output(ArrayList list)
{
   while (i < list.Count)
   {
      //keep track of current group (number)
      //announce group
      //...
   }
}

问候。

2 个答案:

答案 0 :(得分:0)

不使用ArrayList,而是使用List<T>,其中T是您的对象类型。

答案 1 :(得分:0)

这是因为您使用的是非通用集合(ArrayList而不是List<T>)。如果可以的话,使用泛型集合会更好 。但是,如果您被迫使用ArrayList,则必须进行投射:

Foo foo = (Foo) list[0];
int x = foo.number;
...

(我希望你没有真的命名你自己的班级Object ...我也建议不要使用名称var,因为这是一个上下文关键字C#3。)