如何在Java中初始化List<List<Integer>>
?
我知道List
是一个界面,我可以使用ArrayList
或LinkedList
来实现List<Integer> list = new ArrayList<Integer>()
,但是当我初始化List<List<Integer>> list = new ArrayList<ArrayList<Integer>>();
时,我会收到错误不兼容的类型:
ArrayList<ArrayList<Integer>> cannot be converted to List<List<Integer>>.
那我该怎么办?
答案 0 :(得分:21)
使用
List<List<Integer>> list = new ArrayList<List<Integer>>();
或者从Java 1.7开始
List<List<Integer>> list = new ArrayList<>();
答案 1 :(得分:3)
您可以将其定义为List<List<Integer>> list = new ArrayList<List<Integer>>();
。
然后在定义内部List
时,您可以将其初始化为ArrayList<Integer>
。
答案 2 :(得分:2)
您可以将其定义为List<List<Integer>> list = new LinkedList();
答案 3 :(得分:0)
您可以将其初始化为
List<ArrayList<Integer>> list = new ArrayList<ArrayList<Integer>>();
请注意,内部 List 必须是 List 接口的实现,例如 ArrayList。
由于 List 是一个接口,因此不能拥有 List 本身类型的对象。