我试图防止用户输入空格或没有值。 但没有用。即使没有输入值,程序也不会打印我的错误。我究竟做错了什么? my code example如何防止Java扫描仪输入空间
Scanner nameScan = new Scanner(System.in);
System.out.print("Input your name: ");
String newcomer = nameScan.nextLine();
player.setName(newcomer);
String userName = player.getName();
userName = userName.trim();
if (userName.length()==0) {
System.out.println(" ");
System.out.println("You have to set up a player name first... ");
System.out.println(" ");
}
else {...
如果你想防止发生的事情,你必须检查它。检查'newcomer'中提供的值是否为空白,并且仅在没有时才继续。 – 11thdimension
它是有道理的循环输入,直到你得到它的权利 - 我在下面的答案写了一个代码示例。 – Assafs
仅供参考,您不需要执行'userName.length()== 0',您可以执行'userName.isEmpty()'。同样的行为,但第二个更可读(你可以在这里说0是一个幻数)。 – Michael