输入正确,但输出与输入不匹配

时间:2019-10-05 12:27:15

标签: java input output match

作为Java的第一个项目,我正在制作一个简单的a + b计算器。 而且我知道结果应该是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);
        }

    }


}

2 个答案:

答案 0 :(得分:1)

您需要将Input转换为int。使用Integer.parseInt(),但是您必须将其放入try catch语句中,因为String可能是不可转换的(如果您不输入整数)。由于int是原始数据类型,因此您不需要等于,==就足够了。

您还可以将结果转换为String并使用equals方法。

答案 1 :(得分:0)

更改

if (input.equals(result)) {

if (Integer.parseInt(input) == result) {
相关问题