gpt4 book ai didi

Java - 检查用户输入空白值是否失败

转载 作者:行者123 更新时间:2023-12-01 14:02:53 25 4
gpt4 key购买 nike

我正在学习 Java 并正在使用一些控制台应用程序。我正在尝试验证用户输入,并在用户输入错误时提示用户输入另一个值。每当我输入“空”值时,程序就会挂起,当我停止它时,它会吐出所有错误。我怎样才能真正检查是否为空?

示例:

do{
//prompt user for word
System.out.print("\nType \"quit\" to exit \n");
System.out.print("Enter a single word with no spaces: ");

//check to make sure user entered a valid string
if (in.hasNext()){
strWord = in.next();
int nWordLength = strWord.length();
if(nWordLength > 0 && !strWord.isEmpty()){
//do a whole bunch of stuff
// removed for brevity
}else{
//alert user of invalid entry
System.out.println("Not a valid word.");
}else{
//alert user of invalid entry
System.out.println("Not a valid word.");
}
}while (!strWord.equals("quit")); //end if user enters quit

System.out.println("You are now done with the program");

由于程序挂起而终止程序后,我得到如下输出...

输入“quit”退出输入一个不带空格的单词:不是一个有效的单词。

输入“quit”退出输入一个不带空格的单词:不是一个有效的单词。

输入“quit”退出输入一个不带空格的单词:不是一个有效的单词。

输入“quit”退出

进程已完成,退出代码为 -1

最佳答案

只是为了简化你的代码

     boolean isValidInput = false;
do{
//check to make sure user entered a valid string
strWord = in.nextLine();

if(!(strWord.isEmpty()) && !(Character.isWhiteSpace(strWord.charAt(0))))
{
isValidInput = true;
//whatever goes here
}
else
System.out.println("incorrect word entered");

}while(!isValidInput);

关于Java - 检查用户输入空白值是否失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19203957/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com