Java 8 字符检测无字符的方法是什么最好?

What is the best Java 8 Character method for detecting no character?

我有一个用 Java 编写的简单程序,我正在尝试找到一种方法来验证在用户点击控制台中的 "enter" 之前是否已输入所有内容.目前,我正在使用 isLetter() 来确保输入了一个字母,但这似乎并不能阻止某人不输入任何内容并按回车键。我在文档中尝试了几种方法,但似乎无法找到一种有效的方法。

对于下面的代码片段,我展示了我如何成功地禁止输入变量 "letter" 是单个字符,并且永远是单个字符,但这并不妨碍用户从什么都不输入后点击 "enter"。

 if (! Character.isLetter(letter)) {  //Don't forget to validate for no chars entered!
      throw new IllegalArgumentException("A letter is required");

Enterproduce the carriage-return symbol,因此您可以进行此比较:

if (letter != '\r' && letter != '\n') { ... }

由于您使用的是 readLine() 调用,而且通常 readLine() 调用不会在 return 值中包含行终止字符,您为什么不直接做:

if (!yourInput.equals("")) {/* code */}

事实上,您甚至可以在尝试 charAt(0)