📅  最后修改于: 2023-12-03 15:31:55.277000             🧑  作者: Mango
在Java中,Scanner类的hasNextLine()方法用于判断是否还有下一行输入,如果有返回true,否则返回false。这个方法非常有用,在读取用户的输入时可以根据需要循环读取多行输入。
Scanner scanner = new Scanner(System.in);
while(scanner.hasNextLine()){
String line = scanner.nextLine();
//处理每一行输入
}
scanner.close();
上面的代码可以循环读取多行输入。当输入结束时,用户可以使用Ctrl+D(在Windows下)或Ctrl+Z(在Linux和Mac下)告知程序输入已经结束。
下面的示例演示了如何使用Scanner的hasNextLine()方法读取用户输入的多行文本并打印出来。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入多行文本:");
while(scanner.hasNextLine()){
String line = scanner.nextLine();
System.out.println(line);
}
scanner.close();
System.out.println("输入结束。");
}
}
运行程序后,可以输入多行文本,每输入一行会自动打印出来,输入结束后会输出“输入结束。”的提示。可以按Ctrl+D或Ctrl+Z告知程序输入已经结束。
hasNextLine()方法非常有用,可以在读取用户输入时根据需要循环读取多行输入。但是要注意,在使用完Scanner对象后需要关闭它以释放资源。也要注意,hasNextLine()方法只有在输入流有输入时才会返回true,否则会一直阻塞程序。