我正在做一个简单的摇滚,纸张,剪刀程序。由于某种原因,即使用户输入了一个正确的术语,这个while循环也会保持循环。有人可以解释为什么会这样吗?
public static String userChoice(){
String userChoice = "";
while(userChoice != "rock" && userChoice != "paper" && userChoice != "scissors"){
userChoice = JOptionPane.showInputDialog("Rock, Paper, or Scissors?");
JOptionPane.showMessageDialog(null, "Invalid input!");
}
return userChoice;
}
答案 0 :(得分:-1)
您无法将String
与标准比较器进行比较,您想使用someString.equalsIgnoreCase(someOtherString)
编辑: 您可以在某些(罕见)情况下使用标准比较器,但这不是其中之一。