【发布时间】:2015-07-30 01:30:36
【问题描述】:
我遇到了下面的代码,一个简单的给List添加元素的例子
List list = new ArrayList<Integer>();
ListIterator<Integer> litr = null;
list.add("A");
list.add("1");
list.add(5);
litr = list.listIterator();
while(litr.hasNext()){
System.out.println("UIterating " + litr.next());
}
我希望它会抛出一个ClassCastException,但它却把它写到了控制台
A
1
5
这看起来很奇怪。当我尝试时:
List<Integer> list = new ArrayList<Integer>();
我得到一个编译时错误。
如果有人能解释如何将 String 对象添加到 ArrayList 中,我将不胜感激
【问题讨论】:
-
我可以用一句话来概括:“在Java中,泛型只在编译时完成。”话虽如此,Java 会出于这个原因向您发出关于使用原始类型的警告。
标签: java generics arraylist collections