我尝试用java.util.Scanner实现一个简单的yes/no输入。我的代码如下所示:
public boolean ask(String quest){
String answ = scann(quest + " (y/n)");
answ = answ.split("")[1].toLowerCase();
if(answ == "y") { return true; }
if(answ == "n") { return false;}
//if answer isnt understood
printOut("Please enter 'y' or 'n'! Answered: " + answ +"!");
return ask(quest);
}简而言之:它以对答案的无限请求结束。答案永远不会被理解,我不知道我做错了什么。
发布于 2010-09-25 21:06:30
在Java语言中,您不能使用==比较字符串(当然,您可以,但这不是比较它们的字面值的正确方法)。您需要使用equals()
if ("y".equals(answ)) { return true; }
if ("n".equals(answ)) { return false; }https://stackoverflow.com/questions/3793918
复制相似问题