JAVA中集合转数组遍历
JAVA中集合的遍历的一种方法时集合转数组遍历,也是就调用Collection中的toArray().
代码:
public static void main(String[] args) {
// TODO Auto-generated method stub
Collection c=new ArrayList();
c.add(new Student("kj",12));
c.add(new Student("uj",13));
c.add(new Student("tj",15));
c.add(new Student("cj",14));
Object[]ob= c.toArray();//将集合转换为数组
for(int i=0;i<ob.length;i++){
Student s=(Student)ob[i];
System.out.println(s.getName()+"..."+s.getAge());
}
}
运行结果:
kj...12
uj...13
tj...15
cj...14
需要注意的是集合转数组进行遍历的时候调用toArray()方法,需要声明一个Object类的数组对象。当集合所装的类型为对象时,不能直接通过调用对象类的方法拿到对象参数,因为就算存储的是Student对象,已近提升成为了Object。多态的弊端就是,不能使用子类的属性和方法。如果想使用子类的属性和方法,就需要对ob这个Oject数组进行转级,也就是,类型强转。 Student s=(Student)ob[i]。这样做的好处是,我可以遍历Student的所有元素,并对它进行操作。