无法弄清楚为什么我的方法没有执行

时间:2014-11-10 20:20:38

标签: java if-statement methods

下面是一个简单程序中的类代码片段我正在写一个简单的二十一点游戏。 我不明白为什么命中方法在执行程序时无法执行,我输入" hit"。它转到其他部分不管我输入什么,每次都是声明。我甚至添加了一个System.out.println语句来确保字符串匹配。我觉得我必须犯一个非常基本的错误,但我似乎无法弄明白。

System.out.println("Would you like to hit or stand?");
    Scanner input = new Scanner(System.in);
    String playerDecision = input.nextLine();
    //System.out.println(playerDecision);

    if(playerDecision == "hit") {
        hit();
    }
    else { System.out.println("ERROR");

    }

}

public void hit(){
    player.makeHand(deck.draw());
    System.out.println("You have the following  cards: ");
    player.getHand();
    System.out.println("Your hand total is ");
    System.out.println(player.findHandTotal());

}

1 个答案:

答案 0 :(得分:0)

错误的字符串比较。尝试

if("hit".equals(playerDecision)) {