不兼容的类型 列表列表 和 数组列表 数组列表列表

2022-08-31 21:18:28

下面一行给我错误:

Incompatible Types.

List<List<Integer>> output = new ArrayList<ArrayList<Integer>>();

原因何在?

编辑

我明白,如果我把我的第二个ArrayList更改为List,它不会给我错误。我想知道错误的原因。谢谢


答案 1

如果你有一个,那么你将能够添加一个。但是你不能这样做,所以后者不可能是一种.List<List<Integer>>LinkedList<Integer>ArrayList<ArrayList<Integer>>List<List<Integer>>


答案 2

泛型、继承和子类型

当涉及到使用泛型进行编程时,这是一个常见的误解,但这是一个需要学习的重要概念。

enter image description here

Box<Integer>不是 Box 的子类型,即使 Integer 是 Number 的子类型也是如此。