Collection c = new ArrayList();
在jdk5.0里面,初始化集合时需要采用泛型进行定义,像c里面加入的都是String,你可以这样定义:Collection
当然不用泛型也可以,你只需要在定义这个集合的类里面加上: @SuppressWarnings("unchecked")就可以了
因为你使用了容器,却没有用泛型,就会出现上述情况,没关系,不是什么错误
你可以加上泛型
import java.util.*;
public class EnhancedFor {
public static void main(String[] args) {
int[] arry = {1,3,5,7,9};
for(int i : arry) {
System.out.println(i);
}
List
c.add("aaa");
c.add("bbb");
c.add("ccc");
for (String o : c ) {
System.out.println(o);
}
}
}
估计是在这里不能用foreach语句
你的编译级别大概是1.4的,难道出错信息没说: 如果用的是Eclipse,看看Project的Property, JDK Compliance的Compiler compliance level是多少. 尽管你的JDK是1.6,但并不能保证compliance level是1.5以上.
选中项目, 然后右键 > Properties > Java Compiler里面有很多参数. 可以选中Enable project specific settings然后修改该项目的编译参数.