Java:要求用户输入2个数字,然后打印总和错误

Java:要求用户输入2个数字,然后打印总和错误,java,input,console,user-input,Java,Input,Console,User Input,当我试着运行它时,它会给我一个错误 Exception in thread "main" java.lang.NullPointerException at lsamelson_lab5.LSamelson_Lab5.main(LSamelson_Lab5.java:21) Java Result: 1 第21行是请求第一个用户输入的行 我运行的是Ubuntu,这是因为我没有正确导入控制台,还是我的java文件有问题 package lsamelson_lab5; import java.i

当我试着运行它时,它会给我一个错误

Exception in thread "main" java.lang.NullPointerException
at lsamelson_lab5.LSamelson_Lab5.main(LSamelson_Lab5.java:21)
Java Result: 1
第21行是请求第一个用户输入的行

我运行的是Ubuntu,这是因为我没有正确导入控制台,还是我的java文件有问题

package lsamelson_lab5;

import java.io.Console;

/**
*
* @author binka
*/
public class LSamelson_Lab5 {

    /**
    * @param args the command line arguments
    */
    public static void main(String[] args) {
        // TODO code application logic here\
        Console console = System.console();
        String input = console.readLine("Please enter your first number:");
        int newinput = Integer.parseInt(input);
        String input2 = console.readLine("Please enter your second number: ");
        int newinput2 = Integer.parseInt(input2);
        int sum = newinput + newinput2;
        int diff = newinput - newinput2;
        int mult = newinput * newinput2;
        float div = newinput / newinput2;
        System.out.print(sum);
        System.out.print(diff);
        System.out.print(mult);
        System.out.print(div);
    }
}
使用

而不是

String input = console.readLine("Please enter your first number:");  
这不是你需要的
用英语读台词

Scanner in = new Scanner(System.in);  
编辑

Scanner in = new Scanner(System.in);
System.out.println("Please enter your first number:");
int newinput = in.nextInt();
System.out.println("Please enter your second number: ");
int newinput2 = in.nextInt();
使用

而不是

String input = console.readLine("Please enter your first number:");  
这不是你需要的
用英语读台词

Scanner in = new Scanner(System.in);  
编辑

Scanner in = new Scanner(System.in);
System.out.println("Please enter your first number:");
int newinput = in.nextInt();
System.out.println("Please enter your second number: ");
int newinput2 = in.nextInt();
从for
java.io.Console

如果此虚拟机具有控制台,则它由此类的唯一实例表示,该实例可通过调用System.console()方法获得。如果没有可用的控制台设备,则调用该方法将返回null

诸如Eclipse之类的IDE将导致找不到控制台。但是,从命令提示符/*nix shell运行通常会提供一个可以使用的控制台

Scanner alernativeInput = new Scanner(System.in);
作为在
控制台
不可用的环境中运行的变通方法,可以使用

Scanner alernativeInput = new Scanner(System.in);
从for
java.io.Console

如果此虚拟机具有控制台,则它由此类的唯一实例表示,该实例可通过调用System.console()方法获得。如果没有可用的控制台设备,则调用该方法将返回null

诸如Eclipse之类的IDE将导致找不到控制台。但是,从命令提示符/*nix shell运行通常会提供一个可以使用的控制台

Scanner alernativeInput = new Scanner(System.in);
作为在
控制台
不可用的环境中运行的变通方法,可以使用

Scanner alernativeInput = new Scanner(System.in);

哪一行是第21行,您提供了什么输入?String input=console.readLine(“请输入您的第一个数字:”);为什么不
System.out.print(“请输入您的第一个号码:”)
?哪一行是第21行,您提供了什么输入?String input=console.readLine(“请输入您的第一个号码:”);为什么不
System.out.print(“请输入您的第一个号码:”)
?但是用户的输入没有存储在任何地方。啊,是的,我把它放在哪里?但是用户的输入没有存储在任何地方。啊,是的,我把它放在哪里?我不太确定这意味着什么。我没有使用虚拟机。我不太清楚这意味着什么。我没有使用虚拟机。