尝试在小游戏JAVA中缩短该if-else语句

时间:2018-08-31 13:54:22

标签: java

我正在尝试做一个小游戏,您必须从乘法表中回答结果,但事实是,当程序一个接一个地收到答案时,如果10个结果的语句我可以做10个,我可以缩短吗一点点?

我一直在想,但我什么都没想。

这是接收答案的代码部分(表是用户选择的编号,以便他可以从该特定表(例如1号表)中进行回答),而P和E是用户的要点和错误稍后显示。

EnumTrait

2 个答案:

答案 0 :(得分:3)

您可以为此使用for循环。如果您看一下代码,就会发现有很多功能相同的块,但是它们之间的乘积与table的乘积不同。

for(int i = 1; i <= 10; i++) {
    System.out.println(table + "x" + i + "= ?");
    r = sc.nextInt();
    if(r == table * i) {
        System.out.println("Correct");
        p += 1;
    } else {
        System.out.println("Error");
        e += 1;
    }
}

答案 1 :(得分:1)

将其包装到for-loop周期,其中i是一个可插入的可重用整数:

for (int i = 1; i < 11; i++) {                    // Iterate from 1 to 10 (11 is exlusive)
    System.out.println(table + "x" + i + "= ?");  // Here use "i" for the table name
    r = sc.nextInt();
    if (r == table * i) {                         // Here used "i" as multiplicator
        System.out.println("Correct");
        p += 1;
    } else {
        System.out.println("Error");
        e += 1;
    }
}