检查java中的行是否为空?

可能重复:
如何检查Java String不是所有空格

Scanner kb = new Scanner(System.in); String random; System.out.print("Enter your word: "); random = kb.nextLine(); if (random.isEmpty()) { System.out.println("No input detected!"); } else { System.out.println(random); } 

上面的代码没有考虑用户何时腾出空间。 当用户腾出空格并按下回车键时,它仍然会打印空白行。

我该如何解决?

您可以使用String#trim()方法修剪空格,然后进行测试: –

 if (random.trim().isEmpty()) 

另一个解决方案可能是修剪,等于空字符串。

 if (random.trim().equals("")){ System.out.println("No input detected!"); } 

另一种方案

 if (random != null || !random.trim().equals("")) 
System.out.println(random);
else
System.out.println("No input detected!");

这就是Apache Commons的工作方式 :

 public static boolean isBlank(String str) { int strLen; if (str == null || (strLen = str.length()) == 0) { return true; } for (int i = 0; i < strLen; i++) { if ((Character.isWhitespace(str.charAt(i)) == false)) { return false; } } return true; }