java - “收到空行或输入流结束”是什么意思?
问题描述
我有一个直接的(除了问题)任务要在 JVM 语言上实现。这是一个简单的命令行程序,它需要用户的一些输入并将结果输出到控制台。
令我困惑的部分是以下句子“ STD 输入:输入在收到空行或到达输入流的末尾时结束”。
收到空行的部分我理解为用户从控制台启动程序并且程序希望用户手动输入数据并在最后输入空行:
$ java Main.class
Enter your data:
data1
data2
Result:
result1
result2
程序在用户提交空行后关闭控制台阅读器,处理数据并将结果打印到控制台。如果我错了,请纠正我。
虽然,您到达输入流部分的末尾对我来说更加模糊。这让我认为该程序将整个输入流作为参数。在java中它可能看起来像这样:
java Main.class file.txt
这真的是什么意思吗?
这在测试我提交的代码方面会更有意义。验证正确性的人将对一堆文本类执行我的类并读取我的程序的输出。
再一次,如果是这样,人们将如何自动化程序控制台输出的读取验证?
短语“输入在收到空行或到达输入流的末尾时结束”可能意味着什么?当用户手动输入数据和文件输入流的情况时,我应该涵盖这两种情况吗?
解决方案
正如@NomadMaker在评论中所说,输入可以通过管道传输。查看这篇文章以获取更多详细信息。
推荐阅读
- laravel - 与多个中间表的多对多 Laravel Eloquent 关系
- performance - 具有两个 NUMA 节点的机器上的 MPICH2
- jquery - 全日历,天数悬停效果
- c# - EF 包括子级实体
- php - 在另一个页面中显示搜索结果
- php - 在php中将两个或多个数组与不同的共振峰组合
- .net - 由于访问被拒绝错误而无法启动程序
- maven - 在“Maven->Update project”之后,构建路径中源文件夹的配置已更改
- java - 使用来自 RESTful Web 服务端点调用的响应,以便稍后在其他 Web 服务端点调用中使用
- excel - Excel:OR + VLOOKUP 无法检测到某些值