阅读所有行的惯用方式是
while ((line = buffer.readLine()) != null)。另外,我建议
try-with-resources发表声明。就像是
try (InputStreamReader instream = new InputStreamReader(System.in); BufferedReader buffer = new BufferedReader(instream)) { long length = 0; String line; while ((line = buffer.readLine()) != null) { length += line.length(); } System.out.println("Read length: " + length);} catch (Exception e) { e.printStackTrace();}如果你想,当你收到一个空行来结束循环,在添加一个测试为
while循环
while ((line = buffer.readLine()) != null) { if (line.isEmpty()) { break; } length += line.length();}JLS-14.15。该
break声明说:
一条
break语句将控制权从一个封闭的语句中移出。



