用一个带泛型的去接收一个不带泛型的集合:
依然报异常,类型不匹配,不能从字符串转换成整数,这是为什么呢?集合中的元素类型还是String类型,为什么要转换成整数呢?
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Type mismatch: cannot convert from Integer to String
作者: 李菁 时间: 2012-9-13 16:14
下面是我的代码
public class Test {
public static void main(String[] args)throws Exception {
List list = new ArrayList();
list.add(1);
list.add(2);
list.add(3);
List<Integer> intList = list;
for(int i=0;i<intList.size();i++){
Integer in=intList.get(i); //你想定义Integer接收集合中的元素,可集合中的元素是String类型,怎么能让Integer接收呢
所以我把list集合中的元素改为int类型,这句话就不报异常了
System.out.println(in);
}
}
}
public class Test {
public static void main(String[] args)throws Exception {
List list = new ArrayList();
list.add("adfa");
list.add("aaa");
list.add("bbb");
List<String> intList = list;
for(int i=0;i<intList.size();i++){
//Integer in=intList.get(i);
String in=intList.get(i); //如果想定义String接收集合中的元素,可intList集合时Integer反省集合,
从这个集合中取出的元素是Integer类型,所以不能用String接受intList集合中取出的元素。
想用String接受元素,把intList的泛型改成String记u不会报异常了。
System.out.println(in);
}
}
}