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 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题