Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.util.Scanner的问题&;串_Java_Terminal_Java.util.scanner - Fatal编程技术网

java.util.Scanner的问题&;串

java.util.Scanner的问题&;串,java,terminal,java.util.scanner,Java,Terminal,Java.util.scanner,我试图用java.util.Scanner实现一个简单的是/否输入。我的代码如下所示: 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

我试图用java.util.Scanner实现一个简单的是/否输入。我的代码如下所示:

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);
}

简而言之:它以无限的答案请求而告终。答案永远不会被理解,我不知道我做错了什么。

你不能用
=
来比较Java中的字符串(当然,你可以,但这不是比较它们的文本值的正确方法)。您需要使用
equals()


您不能使用
==
来比较Java中的字符串(当然,您可以,但这不是比较它们的文本值的正确方法)。您需要使用
equals()


朱普。如果要避免可能出现的空指针异常,请使用“y”.equals(answ).Jup。如果要避免可能出现的空指针异常,请使用“y”.equals(answ)。可能应该是
answ=answ.split(“”[0]。toLowerCase()?不,第一个拆分为空。可能应该是
answ=answ.split(“”[0]。toLowerCase()?不,第一个拆分为空。
  if ("y".equals(answ)) { return true; }
  if ("n".equals(answ)) { return false; }