为什么在这种方法中没有使用if / else结构?

时间:2014-07-04 19:46:45

标签: java if-statement methods

public static String winner(String computer,String user)
{
    String win=" ";
    if (computer=="rock" && user=="scissors")
    {
        win="Computer wins! Rock smashes scissors.";
    }
    else if (computer=="paper" && user=="rock")
    {
        win="Computer wins! Paper wraps rock.";
    }
    else if (computer=="scissors" && user=="paper")
    {
        win="Computer wins! Scissors cuts paper.";
    }
    else if (computer==user)
    {
        win="Tie. No winner";
    }
    else if (user=="rock" && computer=="scissors")
    {
        win="YOU win! Rock smashes scissors.";
    }
    else if (user=="paper" && computer=="rock")
    {
        win="YOU win! Paper wraps rock.";
    }
    else if (user=="scissors" && computer=="paper")
    {
        win="YOU win! Scissors cuts paper.";
    }
    return win;
}

该方法接收2个小写字符串作为参数。我已通过打印参数进行检查。我不明白为什么我的if else语句不起作用。我只是想尝试一下石头剪刀游戏的可能性。谢谢你所有的帮助。

1 个答案:

答案 0 :(得分:2)

您应该在Java中将字符串与equals进行比较,而不是==,或者您将比较引用,而不是值。

How do I compare strings in Java?