这次我有一个非常蹩脚的问题,这个问题很完美,但现在却不是:
BufferedReader br = new BufferedReader(new InputStreamReader(
System.in));
while (br.readLine() != null) {
System.out.println(br.readLine());
}
Run Code Online (Sandbox Code Playgroud)
输入文件:
1
2
3
4
5
6
7
8
9
Run Code Online (Sandbox Code Playgroud)
在命令行中:$ java myprogram <inputfile
上面编写的代码的结果是:
2
4
6
8
null
Run Code Online (Sandbox Code Playgroud)
但预期的输出应该与输入文件相同!
我哪里错了?!
你不应该readLine()在每个循环中调用两次.
每次调用它时,它都会读取一个新行.打印每个电话的结果:
while (true) {
String line = br.readLine();
if (line == null)
break;
System.out.println(line);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1198 次 |
| 最近记录: |