list虽然是啥都能放的集合,在不加泛型限制的情况下,是什么都能放进去,放进去了,也能直接get拿出来。但是如果用了foreach循环,或者是迭代器,foreach循环和迭代器是有条件的迭代出集合里面的值!!!
就好比下面的例子
首先声明alist是一个list集合
public void foreach(){
System.out.println("使用foreach的方法获取的集合为");
for (Object obj:aList) {
test233 a=(test233) obj;//这个实际上就是foreach循环的条件
System.out.println("值"+":"+a.getChangString()+","+a.getKuanString());
}
}
如果此时添加了
public void addbasetypetotest233(){
aList.add("123");
String a= (String) aList.get(6);
System.out.println(a);
}
这个非test233类的数据也能添加到alist集合中,但是在迭代器或者foreach循环中是,得不到这个结果的,编译器会报错!!!