力扣的的分区数组中,代码提交时提示Object[] 不能转化为int[][]类型的,
为什么不用List<T>就会报错啊
list<int[]> list明确了list中存放的内容的具体类型,所以转换成int [][]没问题,编译器可以识别
但List list的话,编译器只知道基础类型Object [],不知道怎么转换成int [][]
看看能不能先toArray为Object [][],再进行强制转换
这样写是不会报错的,但是会报警告:
List list=new ArrayList<>();
list.add("Hello");
System.out.println(list);
这是因为JDK 1.5版本的新功能,需要对List、Vector之类定义时候,最好进行泛型化,这样的好处是当你指定类型后,比如 List<Integer> list=new ArrayList<>();
,在你使用add方法的时候会判断你新增的数据是否合法。
另外,你需要改成这样,因为 int
不是一个类, Integer
才是类。
List<Integer[]> list=new ArrayList<>();
学会看源码,建议查一下:c.toArray might (incorrectly) not return Object[] (see 6260652)