java - 在 while 循环中比较字符串

标签 java string while-loop

好的,所以我需要要求用户输入是或否,然后进行验证。我必须在 while 循环中执行此操作。所有这些都可以编译,我在这里没有包含导入等。这是我所拥有的,

String str;
str = JOptionPane.showInputDialog("Enter answer, yes or no?");

while(!str.equals("yes")||!str.equals("no")) 
{
   str = JOptionPane.showInputDialog(" Invalid entry. Please enter yes or no.");

}

当我编译时,它会显示输入字符串的对话框。如果我输入yes如果我输入 no 它告诉我无效它告诉我无效。如果我选择 ||!str.equals("no")它工作正常,但只有当我输入 yes 。那么有人可以帮助我吗?谢谢..

最佳答案

对于任何非空“str”

 while(!str.equals("yes")||!str.equals("no"))

永远都是真的。 相反,让它 while(!str.equals("yes") && !str.equals("no"))

关于java - 在 while 循环中比较字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25965929/

相关文章:

linux - 对于唯一字段 1,折叠另一个字段中的非唯一条目

java - 确定字符串中的每个字符是否包含全角字符

c - 程序不断返回段错误

javascript - 从 PHP 获取 Javascript 中的 .src

c++ - while(sline >> n >> c && c== ',' ) 背后的逻辑是什么?

android - getBytes ("UCS-2") 在具有不同 API 级别的不同设备中返回不同的结果

java - 调用方法时从数组返回一个值

java - JRuby、Warbler 和 Java 的 CLASSPATH

java - 为什么C和Java代码之间的socket通信只收到64K数据?

python - 如何用python中的数组值写入文件?