如何在 java 中退出 scanner.hasNextLine() 循环
How to exit from the scanner.hasNextLine() loop in java
我想从包含多行的终端读取以下输入(作为单个流)。
INSERT KEY adam key
TURN KEY adam
ENTER HOUSE adam
INSERT KEY pat foobar
TURN KEY pat
ENTER HOUSE pat
WHO'S INSIDE?
我正在使用以下代码读取它们并将其添加到数组列表中。
ArrayList<String> instructions_list = new ArrayList<String>();
String input_line = "";
while (sc.hasNextLine()) {
input_line = sc.nextLine();
instructions_list.add(input_line);
System.out.println(input_line);
}
System.out.println("Outside Loop");
这可以正确地逐行打印。但它似乎并没有超出 while 循环。如何退出 while 循环和 运行 下一个代码行?
请提出您的建议。
你必须提供一个循环应该终止的退出条件,即在执行了一些固定数量的行之后或者在遇到一些特定的单词等之后
或者您可以尝试:
ArrayList<String> instructions_list = new ArrayList<String>();
String input_line = "";
while (sc.hasNextLine()) {
input_line = sc.nextLine();
if(input_line.equals(""))
break;
instructions_list.add(input_line);
System.out.println(input_line);
遇到空行时循环终止
我想从包含多行的终端读取以下输入(作为单个流)。
INSERT KEY adam key
TURN KEY adam
ENTER HOUSE adam
INSERT KEY pat foobar
TURN KEY pat
ENTER HOUSE pat
WHO'S INSIDE?
我正在使用以下代码读取它们并将其添加到数组列表中。
ArrayList<String> instructions_list = new ArrayList<String>();
String input_line = "";
while (sc.hasNextLine()) {
input_line = sc.nextLine();
instructions_list.add(input_line);
System.out.println(input_line);
}
System.out.println("Outside Loop");
这可以正确地逐行打印。但它似乎并没有超出 while 循环。如何退出 while 循环和 运行 下一个代码行?
请提出您的建议。
你必须提供一个循环应该终止的退出条件,即在执行了一些固定数量的行之后或者在遇到一些特定的单词等之后
或者您可以尝试:
ArrayList<String> instructions_list = new ArrayList<String>();
String input_line = "";
while (sc.hasNextLine()) {
input_line = sc.nextLine();
if(input_line.equals(""))
break;
instructions_list.add(input_line);
System.out.println(input_line);
遇到空行时循环终止