【发布时间】:2020-12-07 09:52:51
【问题描述】:
我有三个字符串数组
String array1 [] = {"A", "B", "C"};
String array2 [] = {"D", "E"};
String array3 [] = {"F", "G", "H", "I"};
我想将所有这些数组存储到字符串数组列表中。
List<String> allArrays[]
我的输出列表 allArrays[] 应该包含
allArrays[0]= [A,B,C]
allArrays[1]= [D,E]
allArrays[2]= [F,G,H,I]
我尝试了下面的一段代码,但得到空指针异常
String array1 [] = {"A", "B", "C"};
String array2 [] = {"D", "E"};
String array3 [] = {"F", "G", "H", "I"};
List<String> allArrays[] =null;
allArrays[0].addAll(Arrays.asList(array1));
//Null pointer exception here
allArrays[1].addAll(Arrays.asList(array2));
allArrays[2].addAll(Arrays.asList(array3));
System.out.println(b[0]);
System.out.println(b[1]);
System.out.println(b[2]);
【问题讨论】:
-
你认为
List<String> allArrays[] =null;会做什么? -
List<String> allArrays[] =null;您认为allArrays与null有何不同? -
数组和泛型类型不能很好地工作。经验法则是优先使用 List 而不是数组,因此如果您想创建类似
List<Foo>[]的内容,请改用List<List<Foo>>。