Java 没有找到适用于addAll的方法
给定以下Java代码:Java 没有找到适用于addAll的方法,java,Java,给定以下Java代码: public void addStuff(Collection<? extends Object> aCollection) { List<? extends Object> myList = new LinkedList<>(aCollection); myList.addAll(aCollection); } public void addStuff(Collection基本上:通配符是不可靠的,Java不假设通配
public void addStuff(Collection<? extends Object> aCollection) {
List<? extends Object> myList = new LinkedList<>(aCollection);
myList.addAll(aCollection);
}
public void addStuff(Collection基本上:通配符是不可靠的,Java不假设通配符是相同的通配符
no suitable method found for addAll(Collection<CAP#1>)
method Collection.addAll(Collection<? extends CAP#2>) is not applicable
(argument mismatch; Collection<CAP#1> cannot be converted to Collection<? extends CAP#2>)
method List.addAll(Collection<? extends CAP#2>) is not applicable
(argument mismatch; Collection<CAP#1> cannot be converted to Collection<? extends CAP#2>)
where CAP#1,CAP#2 are fresh type-variables:
CAP#1 extends Object from capture of ? extends Object
CAP#2 extends Object from capture of ? extends Object
public LinkedList(Collection<? extends E> c) {
this();
addAll(c);
}
public boolean addAll(Collection<? extends E> c) {
return addAll(size, c);
}
public <E> void addStuff(Collection<E> aCollection) {
List<E> myList = new LinkedList<>(aCollection);
myList.addAll(aCollection);
}