我想知道如何在一行中比较多个字符串.我尝试使用|| 但它不适用于布尔值或字符串.这就是我的代码:
}else if(question != "a" || "b") {
System.out.println("Sorry that isn't an A or a B");
Run Code Online (Sandbox Code Playgroud)
对于那些标记为重复的人,我在这里检查了200多个关于堆栈溢出的问题,但没有一个工作.@Chrylis发布的那个实际上并没有帮助.他们只是在询问==和.equals()的区别
首先,不要==用于字符串.你以后会知道为什么.您希望按字符串的内容比较字符串,而不是它们在内存中的位置.在极少数情况下的字符串"a"可以比较假,以所谓的另一个字符串"a".
其次,将其拆分,以便在比较结果上执行布尔逻辑:
else if(!(question.equals("a") || question.equals("b")) {
Run Code Online (Sandbox Code Playgroud)
您可以尝试使用Arrays.asList():
else if (!Arrays.asList("a", "b").contains(question)) {
...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18783 次 |
| 最近记录: |