我正在制作一个简单的 a+b 计算器,作为我的第一个 Java 项目之一。 我知道结果应该是 12。Java 甚至显示结果是 12,但是如果我输入结果是 12,我的代码会告诉我输入不等于结果。
我已经为此思考了一段时间,但我不明白我做错了什么。
有人可以帮我吗?
import java.util.Scanner;
public class MethodMan {
public static void main(String[] args) {
calculate(5, 7);
}
public static void calculate(int a, int b)
{
Scanner sc = new Scanner(System.in);
System.out.println("What is: " + a + "+" + b + "?");
String input = sc.nextLine();
int result = a + b;
if (input.equals(result)) {
System.out.println("Correct");
}
else{
System.out.println("Wrong: The Result is: "+result);
}
}
}
最佳答案
您需要将输入转换为 int。使用 Integer.parseInt(),但您必须将其放入 try catch 语句中,因为 String 可能不可转换(如果您不输入整数)。并且由于 int 是原始数据类型,因此您不需要 equals , == 就足够了。
您还可以将结果转换为字符串并使用 equals 方法。
关于java - 输入正确,但输出与输入不符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58248271/