Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将字符串从ArrayList分配到Java数组时出现NullPointerException_Java_Arrays_Nullpointerexception - Fatal编程技术网

将字符串从ArrayList分配到Java数组时出现NullPointerException

将字符串从ArrayList分配到Java数组时出现NullPointerException,java,arrays,nullpointerexception,Java,Arrays,Nullpointerexception,我的代码有问题,因为当我尝试将字符串从arraylist分配到array时,它会抛出NullPointerException String[][] data = new String[idList.size()][]; for(int i = 1; i<=idList.size(); i++) { data[i][0] = idList.get(i); data[i][1] = nameList.get(i); data[i][2] = hList.get

我的代码有问题,因为当我尝试将字符串从
arraylist
分配到
array
时,它会抛出
NullPointerException

 String[][] data = new String[idList.size()][];
 for(int i = 1; i<=idList.size(); i++) {
     data[i][0] = idList.get(i);
     data[i][1] = nameList.get(i);
     data[i][2] = hList.get(i);
     data[i][3] = sList.get(i);
     data[i][4] = fList.get(i);
     data[i][5] = mList.get(i);
     data[i][6] = osList.get(i);
     data[i][7] = tsList.get(i);
     data[i][8] = podList.get(i);
     data[i][9] = pacList.get(i);
 }
String[][]数据=新字符串[idList.size();

对于(int i=1;i
数据[i]
null
,因为您将
数据
初始化为包含
idList.size()
null
类型
字符串[]
的引用

改变

String[][] data = new String[idList.size()][];


它将初始化
数据
以包含
idList.size()
对长度为10(
String[10]
)的
字符串的引用。

我建议正确定义数组(在两个维度中)

替换这个

new String[idList.size()][];
比如

new String[idList.size()][10]; // you have 10 different lists there...
并以零基数在for循环中迭代

例子:
String[][]数据=新字符串[idList.size()][10];
for(int i=0;i
在调试器中,您将能够看到
数据[0]
null
。我建议您初始化它们。
new String[idList.size()][10]; // you have 10 different lists there...
    String[][] data = new String[idList.size()][10];
    for (int i = 0; i < idList.size(); i++) {
        data[i][0] = idList.get(i);
        data[i][1] = idList.get(i);
        data[i][2] = idList.get(i);
        data[i][3] = idList.get(i);
    }