您好我是Java新手并且对此不太了解。我刚刚制作了一个程序并且不确定它是否正确。我想要用户输入以便计算回答。这是代码:
import java.util.Scanner;
class Vedant
{
public static void main(String[] args)
{
Scanner inputa=new Scanner(System.in);
int b=inputa.nextInt();
if(b<20);
int a=5;
{
System.out.println("Answer ="+a);
}
}
}
当我在cmd中运行此文件时,它什么都不做。它甚至不会要求输入。如果我输入随机内容并按回车键,则会给我这个
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at Vedant.main(Vedant.java:8)
请帮忙。是的,我只是一个初学者
答案 0 :(得分:2)
当我在cmd中运行此文件时,它什么也没做。
那是不正确的
它甚至不会要求输入
您没有告诉它,您提供的命令是inputa.nextInt()
,它只读取输入,但不输出任何内容。
如果我输入随机内容并按回车键,则会给我这个
inputa.nextInt()
表示&#34;将下一个输入读作数字&#34;。如果您要输入随机内容,则无法将其转换为数字。
您的代码还有一些问题:
if(b<20);
末尾的分号表示如果b
实际上小于20,则不执行任何操作
int a=5;
{
System.out.println("Answer ="+a);
}
此处不需要括号,因为您明确将变量a
设置为5应用程序,如果它达到这个目的,将始终说Answer =5
答案 1 :(得分:0)
如果您想要它请求号码。你必须告诉它要求一个这样的数字。
System.out.println("Enter a number.");
根据您在代码中输入的内容,您似乎正在尝试添加&#39; b&#39;和&#39; a&#39;为&#34;回答&#34;。如果是这样,您可以更轻松地制作一个新变量,即添加&#39; a&#39;和&#39; b&#39;。
int answer = a + b;
System.out.printf("Answer = %d", answer);