这编译 (1.6)
List<? extends Object> l = new ArrayList<Date>();
但这不是
List<List<? extends Object>> ll = new ArrayList<List<Date>>();
有错误
Type mismatch: cannot convert from ArrayList<List<Date>> to List<List<? extends Object>>
有人能解释一下为什么吗? 谢谢
编辑:为结果而编辑
最佳答案
嗯,解释是正确的,但我认为添加实际的工作解决方案也是一件好事;)
List<? extends List<? extends Object>>
可以正常工作,但显然这种集合的使用受到泛型集合的通常限制的很大限制(但对于更简单的 List< ? extends Date > 也是如此)
关于Java泛型,通配符的嵌套集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6293871/