java输入如何换行
使用 Scanner 类的 nextLine() 方法
Scanner 类的 nextLine() 方法可以读取整行输入,包括换行符。适合需要读取多行文本的场景。

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入多行文本(输入空行结束):");
String line;
while (!(line = scanner.nextLine()).isEmpty()) {
System.out.println("读取的行:" + line);
}
scanner.close();
}
}
使用 BufferedReader 类
BufferedReader 的 readLine() 方法同样支持逐行读取输入,效率较高,适合处理大量输入。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入多行文本(输入空行结束):");
String line;
while (!(line = reader.readLine()).isEmpty()) {
System.out.println("读取的行:" + line);
}
reader.close();
}
}
处理混合输入(数字和字符串)
当需要先读取数字再读取字符串时,需注意换行符的残留问题。可以通过额外调用 nextLine() 清除缓冲区。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入数字:");
int num = scanner.nextInt();
scanner.nextLine(); // 清除换行符
System.out.print("请输入字符串:");
String text = scanner.nextLine();
System.out.println("数字:" + num + ",字符串:" + text);
scanner.close();
}
}
使用分隔符匹配多行输入
若需以特定分隔符(如逗号)结束输入,可通过设置 Scanner 的分隔符模式实现。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
scanner.useDelimiter("\\n"); // 按换行符分隔
System.out.println("请输入内容(按回车换行):");
while (scanner.hasNext()) {
String input = scanner.next();
if (input.equals("exit")) break;
System.out.println("输入内容:" + input);
}
scanner.close();
}
}
注意事项
- 使用
Scanner时,nextInt()或nextDouble()等方法不会消耗换行符,后续调用nextLine()可能直接读取空行。 BufferedReader的readLine()会抛出IOException,需处理异常或声明抛出。- 在循环中读取输入时,需明确终止条件(如输入特定字符串或空行)。






