使用单独的方法输入验证

时间:2017-04-13 03:16:43

标签: java

如何使用其他方法检查用户对简单等式的回答。 这就是我目前所拥有的:

public static void generateSubtraction() {

    Random rand2 = new Random();
    Scanner keyboard4 = new Scanner(System.in);

    int max = 100;
    int min = 1;

    int random = rand2.nextInt(50);
    int random2 = rand2.nextInt(50);

    int n = random - random2;
    System.out.println(random + " - " + random2 + " = ?");
    int x = keyboard4.nextInt();

    if (n == x) {

        System.out.println("Correct!");
    }
    if (n != x) {

        System.out.println("Wrong!");
    }

这是我想要的一个完全独立的方法:

    if (n == x) {

        System.out.println("Correct!");
    }
    if (n != x) {

        System.out.println("Wrong!");
    }

不确定如何在第一种方法中使用答案输入并在第二种方法中检查它。我需要从main方法调用这两种方法。

2 个答案:

答案 0 :(得分:1)

为什么不再制作另一种void方法?

public void printAnswer(int n, int x){
    if (n == x) {

        System.out.println("Correct!");
    }
    if (n != x) {

        System.out.println("Wrong!");
    }
}

使用:printAnswer(n, x);

来调用它

答案 1 :(得分:0)

如果要调用这两种方法,可以为int n和x创建一个数组 然后提供一个返回类型为数组

    public static int[] generateSubtraction() {

        Random rand2 = new Random();
        Scanner keyboard4 = new Scanner(System.in);

        int max = 100;
        int min = 1;

        int random = rand2.nextInt(50);
        int random2 = rand2.nextInt(50);

        int n = random - random2;
        System.out.println(random + " - " + random2 + " = ?");
        int x = keyboard4.nextInt();
        int[] numbers={n,x};
        return numbers;
}

然后

public static void getArray(int[] numbers)

    {
        if(numbers[0]==numbers[1])
         //code code code
        else
            //code code code

    }

然后在主

getArray(generateSubstraction());