任何人都可以告诉我为什么addAll方法允许在已经具有String限制的通用列表中编译原始类型。 根据我的理解,addAll(Collection<?extends T> c)将转换为addAll(Collection<?extends String> c),它可以使用String或其子类型。
List<String> x = new ArrayList<String>();
x.add("sfhvjk");
//ArrayList<Integer> s = new ArrayList();
ArrayList s = new ArrayList();
//s.add("efyi");
s.add(3);
x.get(0);
x.addAll(s);// why its not giving compile time error?
for( Object o :x){
System.out.println(o);
}