首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

第一回发帖,求大神看看为什么出现空指针

2013-06-19 
第一次发帖,求大神看看为什么出现空指针代码如下public class Test {public static void main(String args

第一次发帖,求大神看看为什么出现空指针
代码如下

public class Test {
public static void main(String args[]) {
String s = "1,2;3,4,5;6,7,8,9;3,5";
double[][] d = back(s);
for(int i=0; i<d.length; i++) {
for(int j=0; j<d[i].length; j++) {
System.out.print(d[i][j] + " ");
}
System.out.println();
}
}

static double[][]  back (String s) {
String [] arr1 = s.split(";");
String [] arr2 ;
double[][] d = new double[arr1.length][];
for(int i = 0; i<arr1.length; i++) {
arr2 = arr1[i].split(",");
for(int j=0; j<arr2.length; j++) {
d[i][j] = Double.parseDouble(arr2[j]);
}

}
return d;

}
}




Exception in thread "main" java.lang.NullPointerException
at Test.back(Test.java:21)
at Test.main(Test.java:5)
指针 异常
[解决办法]


static double[][] back(String s) {
String[] arr1 = s.split(";");
String[] arr2;
double[][] d = new double[arr1.length][];
for (int i = 0; i < arr1.length; i++) {
arr2 = arr1[i].split(",");
d[i] = new double[arr2.length];//加一初始化。
for (int j = 0; j < arr2.length; j++) {
d[i][j] = Double.parseDouble(arr2[j]);
}
}
return d;
}
}

[解决办法]
for (int i = 0; i < arr1.length; i++) {
arr2 = arr1[i].split(",");
d[i] = new double[arr2.length];
for (int j = 0; j < arr2.length; j++) {
d[i][j] = Double.parseDouble(arr2[j]);
}
}

热点排行