java二维数组问题

packagetest;publicclassTest{publicstaticvoidmain(String[]args){System.out.println("De... package test;
public class Test
{
public static void main(String[] args)
{
System.out.println("Declare in the middle:");
test1 aPerson = new test1();
int[][] c;
c=new int[10][];
c =aPerson.height();
int a ;
a = 5;
a=c[9][1]/a;
printeArray(c);
System.out.println(a); // print an integer
}

public static void printeArray(int[][] inputArray){
for (int i=0;i<inputArray.length;i++){
for(int j=0;j<inputArray[i].length;j++){
System.out.print(inputArray[i][j]);

}
System.out.println();
}

}
}
class test1 {
int b;

public int[][] height(){
int[] m;
int[][] n;
n=new int[10][];
m=new int[10];
b=10;
for(int i=0;i<b;i++){
m[i]=i+1;
for(int j=0;j<10;j++){
n[i][j]=j*i;
}
}
return n;
}

}
这个哪里不正确吗,怎么老是报Exception in thread "main" java.lang.NullPointerException
at test.test1.height(Test.java:41)
at test.Test.main(Test.java:10)

这个啊?有些不明白。希高手帮我分析下。
展开
 我来答
QQMSD8
推荐于2016-11-05 · 知道合伙人软件行家
QQMSD8
知道合伙人软件行家
采纳数:6788 获赞数:13241
没有做不到,只有想不到,帮助别人的同时也是对自己的提升

向TA提问 私信TA
展开全部
这里很明显的告诉了你,空指针异常了
java.lang.NullPointerException
at test.test1.height(Test.java:41)
at test.Test.main(Test.java:10)

Test.java 41行
应该是这里吧,你声明二维数据的时候,没有给二维指定空间

n=new int[10][];
追问
指定空间的该怎么弄呢,我刚学java,对这里面的原理还没有弄明白。可以为我分析下吗,谢谢您。
追答
我不是很明白你的height() 这个方法用来干嘛,但是你声明这个数组的时候:n=new int[10][];

这个二维数组,你并没有声明第二维的长度
你应该这样,n=new int[10][10]; 指定二维的长度为10
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式