我对此方法有疑问java.util.Collections
:
public class Collections {
public static <T> void copy(List<? super T> dest, List<? extends T> src) {
for (int i=0; i<src.size();i++)
dest.set(i,src.get(i));
}
}
我了解如何<? super T>
工作,但是,我不明白为什么第一个参数是List<? super T>
而不是List<T>
. 我认为在这种情况下它是没有用的。
使用List<T>
应该也可以,不是吗?
如果可能的话,你能给我一些例子来理解它吗?
谢谢。