weixin_37066030 2017-04-27 11:38 采纳率: 100%
浏览 1361
已采纳

java.lang.NullPointerException?请大家帮忙看看是哪里有问题

package jishuhuanfang;

import java.io.IOException;

public class constant {
int arr[][];
int i,j;
int k=1;
void jishu(int n)
{
for(i=0;i<n;i++)
for(j=0;j<n;j++)
arr[i][j]=0;
j=(n+1)/2-1;
i=0;
while(k<=n*n)
{
if(arr[i][j]!=0)
i=i+1;
arr[i][j]=k;
k=k+1;

      if(j+1==n&&i-1==-1)
          i=i+1;
      else if(i-1==-1)
      {
          i=n-1;
          j=j+1;
      }
      else if(j+1==n)
      {
          j=0;
          i=i-1;
      }
      else
      {
          j=j+1;
          i=i-1;
      }
    }
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        {
            System.out.print(arr[i][j]+" ");
        }
        System.out.print("\n");
    }   
}


public static void main(String[] args) throws IOException {
    constant test=new constant();
    System.out.println("输入n:");
    int n=System.in.read();
    test.jishu(n);
    /*
    if(n%2==1)
        //奇数阶幻方
    else if(n==2)
        System.out.println("不存在2阶幻方");
    else if(n%4==0)
        //4k偶数阶幻方
    else
        //4k+2偶数阶幻方
    */

}

}


输入n:
5
Exception in thread "main" java.lang.NullPointerException
at jishuhuanfang.constant.jishu(constant.java:13)
at jishuhuanfang.constant.main(constant.java:56)

我该怎么修改呢?

  • 写回答

1条回答 默认 最新

  • lihongbiao0610 2017-04-28 01:07
    关注

    int arr[][];没有初始化,应该是

    void jishu(int n)
    {
    arr=new int[n][n];
    ........
    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘