线程“main”中的异常java.lang.NumberFormatException:null是什么意思?

时间:2014-10-05 17:57:38

标签: java

我正在尝试构建一个N x N矩阵,该矩阵将使用0&1和1打印。它在代码中没有显示错误,但是当我运行我的代码时,我得到了

  

线程中的异常" main" java.lang.NumberFormatException:null

我不知道如何解决它。

public class LargestRowColumn {

    public static void printMatrix (int n){

        for (int i = 1; i <= n; i++)
        {
            for (int j = 1; j <= n; j++)
            {
                System.out.println((int)(Math.random() * 2)+ " ");
            }

            System.out.println("\n");
        }
    }


    public static void main(String[] args) {

        System.out.println("Enter a number");
        String Matrix = null;
        int n = Integer.parseInt(Matrix);

        System.out.print(n);
    }

}

3 个答案:

答案 0 :(得分:3)

这意味着您正在尝试将null解析为int:

String Matrix = null;
int n = Integer.parseInt(Matrix);

您可能希望从用户那里获得一些输入。

答案 1 :(得分:0)

您正在尝试将null转换为整数

String Matrix = null;
Integer.parseInt(Matrix); // here is exception

如果您想要来自用户的输入,请执行以下操作:

int matrix=new Scanner(System.in).nextInt();
printMatrix(matrix); // print matrix

答案 2 :(得分:0)

如果您想从用户那里获得输入,Scanner Class是最好的方法。要使用它,请编写如下代码:

import java.util.Scanner;             //since JAVA SE 7

public class AnyClass{

   public static void main(String[] a){ 
   Scanner scan = new Scanner(System.in);  
                        //telling Scanner Class to proceed with input Stream

   System.out.println("Enter a number");
   int n = scan.nextInt();             //getting a number from the user

   }
}

为了编写好的代码,请尝试使用尝试捕获块来捕获异常。

您可以将此示例中的main()方法中的代码包含在try块中,后跟一个或多个catch块以捕获Exception并处理它。