作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在使用扫描仪编写一个简单的程序,现在想通过将输入与这些词进行比较来确保用户仅键入"is"或“否”。我正在使用普通的 if
语句和 ||
(管道):
if (!input.equals("yes") || !input.equals("no")) {
//do something
}
Java(我正在使用 BlueJ)提示我的管道,它说:“非法字符:'\u00a0'”
我尝试过的
有谁知道为什么会提示以及我该如何解决?– 提前致谢
最佳答案
字符u00a0
是一个不间断的空间。
看起来你在代码中输入了一个控制字符,替换了这一行的副本中的所有内容
if(!input.equals("yes") && !input.equals("no"))
或者简单地取消您行中的空格并重新键入它们(确保您没有键入 nbsp
)。
请注意,我将 ||
更改为 &&
,因为例如键入“no”仍会输入条件,因为“yes”不等于输入。您的条件将是 true || false
这将导致 true
。
无论如何,这与 ||
或 &&
运算符无关,它是空格。
关于Java - OR/AND 字符 (|| &&) 在 if 语句中是非法的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29496347/
我是一名优秀的程序员,十分优秀!