【发布时间】:2018-07-19 12:00:35
【问题描述】:
我不明白为什么 size(test); 无法编译。谁能帮我理解一下?
public class TestContainer<T extends Object> {
}
.
public class Main {
public static int size(List<TestContainer<?>> list) {
return list.size();
}
public static void main(String[] args) {
List<TestContainer<Object>> test = new ArrayList<TestContainer<Object>>();
size(test); // this does not compile
test.size(); // of course this works fine
}
}
【问题讨论】:
-
编译器可能已经告诉你了。
-
让它
size(List<? extends TestContainer<?>>)。 -
或者这个大小(List> list)
标签: java generics arguments wildcard