在java中读取输入直到EOF

新手上路,请多包涵

在 C++ 中,如果我想读取输入直到 EOF,我可以按以下方式进行

while(scanf("%d",&n))
{
    A[i]=n;
    i++;
}

然后我可以将此代码作为 ./a.out < input.txt 运行。这段代码的java等价物是什么?

原文由 zer0nes 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 696
2 个回答

你可以这样做:

 Scanner s = new Scanner(System.in);
while (s.hasNextInt()) {
    A[i] = s.nextInt();
    i++;
}

原文由 Ted Hopp 发布,翻译遵循 CC BY-SA 3.0 许可协议

// assuming that reader is an instance of java.io.BufferedReader
String line = null;
while ((line = reader.readLine()) != null) {
    // do something with every line, one at a time
}

如果您遇到困难,请告诉我。

原文由 hd1 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题