Java if指令的错误使用

Java if指令的错误使用,java,loops,Java,Loops,我在某些情况下使用if语句,这会给我的请求增加传统的价值。。我在做一个纸、石头、剪刀的游戏,如果句子是什么,还有另一种形式吗 if ("stone".equals(movePlayer1) && "stone".equals(moveComputer)) { draw = draw + 1; } if ("paper".equals(movePlayer1) && "paper".equals(moveComputer)) {

我在某些情况下使用if语句,这会给我的请求增加传统的价值。。我在做一个纸、石头、剪刀的游戏,如果句子是什么,还有另一种形式吗

if ("stone".equals(movePlayer1) && "stone".equals(moveComputer)) {
        draw = draw + 1;

    }
    if ("paper".equals(movePlayer1) && "paper".equals(moveComputer)) {
        draw = draw + 1;
    }
    if ("Scissors".equals(movePlayer1) && "Scissors".equals(moveComputer)) {
        draw = draw + 1;
    }
    if ("paper".equals(movePlayer1) && "Scissors".equals(moveComputer)) {
        win = win + 1;

    }

    if ("paper".equals(movePlayer1) && "stone".equals(moveComputer)) {
        win = win + 1;

    }

    if ("Scissors".equals(movePlayer1) && "paper".equals(moveComputer)) {
        win = win + 1;

    }

    if ("stone".equals(movePlayer1) && "stone".equals(moveComputer)) {
        serverwin = serverwin + 1;

    }

    if ("paper".equals(movePlayer1) && "Scissors".equals(moveComputer)) {
        serverwin = serverwin + 1;

    }

    if ("Scissors".equals(movePlayer1) && "stone".equals(moveComputer)) {
        serverwin = serverwin + 1;

    }

还有另一种方法,比如开关,或者类似的东西?

在石头、布、剪刀的实现中,玩家和计算机同时做出选择,然后比较这些选择。要么玩家赢,要么电脑赢,要么玩家抽签。一旦您检测到其中一种情况,就不再需要进行进一步评估

当您对许多
if
语句进行编码时,每条语句都独立于其他语句。即使第一个
if
语句的计算结果为
true
,所有剩余的
if
语句仍将进行计算

与其使用许多
if
语句,不如使用
if。。。否则如果。。。else
以互斥的方式将许多条件有效地联系在一起,并且一旦其中一条语句的计算结果为
true
,就会将控制权从代码块中传递回来

if ("stone".equals(movePlayer1) && "stone".equals(moveComputer))
{
    draw = draw + 1;
}
else if ("paper".equals(movePlayer1) && "paper".equals(moveComputer))
{
    draw = draw + 1;
}
else if ("Scissors".equals(movePlayer1) && "Scissors".equals(moveComputer))
{
    draw = draw + 1;
}

// continue your code below

在继续之前,请确保您理解了。

在石头、布、剪刀的实现中,播放器和计算机同时做出选择,然后对这些选择进行比较。要么玩家赢,要么电脑赢,要么玩家抽签。一旦您检测到其中一种情况,就不再需要进行进一步评估

当您对许多
if
语句进行编码时,每条语句都独立于其他语句。即使第一个
if
语句的计算结果为
true
,所有剩余的
if
语句仍将进行计算

与其使用许多
if
语句,不如使用
if。。。否则如果。。。else
以互斥的方式将许多条件有效地联系在一起,并且一旦其中一条语句的计算结果为
true
,就会将控制权从代码块中传递回来

if ("stone".equals(movePlayer1) && "stone".equals(moveComputer))
{
    draw = draw + 1;
}
else if ("paper".equals(movePlayer1) && "paper".equals(moveComputer))
{
    draw = draw + 1;
}
else if ("Scissors".equals(movePlayer1) && "Scissors".equals(moveComputer))
{
    draw = draw + 1;
}

// continue your code below

在继续之前,请确保您理解了以下方法。

以下方法如何

    switch (movePlayer1) {
    case "stone":
        switch (moveComputer) {
        case "stone":
            draw++;
            break;
            // check rest of stone vs moveComputer value here
        }
        break;

    case "paper":
        switch (moveComputer) {
        case "paper":
            draw++;
            break;
            // check rest of paper vs moveComputer value here
        }
        break;

    case "Scissors":
        switch (moveComputer) {
        case "Scissors":
            draw++;
            break;
            // check rest of Scissors vs moveComputer value here
        }
        break;
    }

下面的方法怎么样

    switch (movePlayer1) {
    case "stone":
        switch (moveComputer) {
        case "stone":
            draw++;
            break;
            // check rest of stone vs moveComputer value here
        }
        break;

    case "paper":
        switch (moveComputer) {
        case "paper":
            draw++;
            break;
            // check rest of paper vs moveComputer value here
        }
        break;

    case "Scissors":
        switch (moveComputer) {
        case "Scissors":
            draw++;
            break;
            // check rest of Scissors vs moveComputer value here
        }
        break;
    }

你的错误是什么?请不要让我们比需要的更努力。快速java提示:不要做x=x+1,你应该做x+=1。还有一个提示:不要使用字符串,也不要使用字符串常量或枚举“stone”。equals(movePlayer1)和&“stone”。equals(moveComputer)重复了?你的错误是什么?请不要让我们比需要的更努力。快速java提示:不要做x=x+1,你应该做x+=1。还有一个提示:不要使用字符串,也不要使用字符串常量或枚举“stone”。equals(movePlayer1)和&&“stone”。equals(moveComputer)重复了吗?