一个简单的 ArrayList 的遍历问题
我以前一直记得遍历ArrayList是需要这样:
ArrayList students=new ArrayList();
....
....
foreach(Object obj in students)
{
Student stu=(Student)obj;
...
...
}
我记得遍历ArrayList需要先用Object变量接收,再进行转换使用。
但是今天我忽然发现,也可以:
foreach(Student stu in students)
{
...
...
}
这样直接使用。
那是不是说,只要我确认了集合中一定只存放同类型的变量,那我就可以不用Object进行拆箱了?
------解决方案--------------------你还可以这样用呢
List<Student> list=new List<Student>();
list.Add(new Student());
list.Add(new Student());
foreach(Student stu in list)
{
...
...
}
------解决方案--------------------最好使用泛型类,请参考2楼代码
需要using System.Collections.Generic;
------解决方案--------------------foreach(Object obj in students)
{
Student stu=(Student)obj;
...
...
}
foreach(Student stu in students)
{
...
...
}
这两种写法性能相同