当前位置: 代码迷 >> J2SE >> 二维数组赋值报空指针解决方案
  详细解决方案

二维数组赋值报空指针解决方案

热度:67   发布时间:2016-04-23 20:05:38.0
二维数组赋值报空指针

table = new String[td.size()][];
for (int i=0;i<td.size();i++) {
table[k][j] = td.get(i);
j++;
if (j == 4) {
k++;
j = 0;
}

td    是  List<String> td = new ArrayList<String>();
目的是将容器中的值 转化成二维数组,但是在从容器取值赋值给二维数组的时候报空指针错误  请问什么原因啊


Exception in thread "main" java.lang.NullPointerException
at bean.T_History.s_History(T_History.java:51)
at bean.T_History.main(T_History.java:21)
------解决思路----------------------
这行代码
	List<String> td = new ArrayList<String>();

是你认为的吧。
看了你这段代码,包空指针就是td==null时,你对td求size报的
我给你的代码改为:

if(td==null){
 td = new ArrayList<String>();
}
table = new String[td.size()][];   
        for (int i=0;i<td.size();i++) {
            table[k][j] = td.get(i);
            j++;
            if (j == 4) {
                k++;
                j = 0;
            }
  相关解决方案