将字符串从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);
}