关于声明List遇到的错误,求解答


List<List<Integer>> res = new ArrayList<ArrayList<Integer>>();  //为什么会报错
List<List<Integer>> res = new ArrayList<List<Integer>>();  //这样就可以,当然不写里面的也行
ArrayList<ArrayList<Integer>> res = new ArrayList<ArrayList<Integer>>();  //这样为啥就行
<T>
T得一样, List和ArrayList不是同一个类

你应该这么写

List<? extends  List<Integer>> res = new ArrayList<ArrayList<Integer>>();