gpt4 book ai didi

java - 在编程比赛中接受输入时,我该怎么做才能阻止扫描器读取输入?

转载 作者:行者123 更新时间:2023-11-30 06:32:27 25 4
gpt4 key购买 nike

我以前参加过一场比赛,我也研究过另一场比赛。但是在其中,我意识到我不知道如何从机器上获取用户输入。当一个普通人使用它时,我知道我可以通过为其分配关键字来退出,但是当它被输送到一台生成自己的代码来测试我的机器时,我将如何在竞争中处理它?当我不知道最后一个输入是什么时,我该如何编写代码来跳出 while 循环?

在 java 中查看时:

while(sc.hasNext()){ /*code here. Breaks out when machine input is done*/}

我调查了一下,发现了这个:“从 STDIN 读取输入并输出到 STDOUT。”当我点击 java 的链接时,它为我提供了缓冲阅读器或扫描器的维基百科,但没有提供其他信息,而是我刚刚提供的示例代码。

示例输入:

2
2 5
3 4 8

假设第一行是要阅读的行数。我们如何知道何时停止阅读每一行,还是只阅读整行?

最佳答案

while(sc.hasNext() && !shouldStopReading){ /*code here*/}

或者还有...

while(sc.hasNext()){ /*code here*/ if (shouldStopReading) { break; } }

回应您的编辑:

Sample input: 2 2 5 3 4 8

Lets assume the first line is how many more lines to read. How do we know when to stop reading in each individual line, or do we just read the whole line?

在 Windows 上,“行”通常以回车/换行组合结束,或者在 Mac/Unix/Linux 上仅以换行结束。您可以只查找这些字符来分隔行。

通常有专门用于读取“行”的函数。

您的示例似乎非常简单明了。作为伪代码:

String lineCountString = ReadLine();
int lineCount = StringToInt(lineCountString);
for (i from 0 to lineCount - 1)
String aLine = ReadLine();
DoSomethingWithEachLine(aLine);

关于java - 在编程比赛中接受输入时,我该怎么做才能阻止扫描器读取输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8782923/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com