📜  Java中的 Scanner hasNextLine() 方法及示例(1)

📅  最后修改于: 2023-12-03 15:31:55.277000             🧑  作者: Mango

Java中的 Scanner hasNextLine() 方法及示例

在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,否则会一直阻塞程序。