java如何标准输入
标准输入的方法
在Java中,标准输入通常通过System.in结合Scanner或BufferedReader类实现。以下是两种常见的方法:
使用Scanner类
Scanner是Java提供的一个简单工具类,适合读取基本数据类型和字符串。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine(); // 读取一行字符串
int number = scanner.nextInt(); // 读取整数
scanner.close(); // 关闭Scanner
}
}
使用BufferedReader类
BufferedReader效率更高,适合处理大量输入数据。
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));
String input = reader.readLine(); // 读取一行字符串
reader.close(); // 关闭BufferedReader
}
}
处理输入异常
读取输入时可能抛出异常,需捕获或声明抛出。
try {
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
} catch (Exception e) {
System.out.println("输入格式错误");
}
读取多行输入
通过循环逐行读取,直到满足终止条件(如空行或特定标记)。

Scanner scanner = new Scanner(System.in);
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
if (line.isEmpty()) break;
System.out.println(line);
}
性能优化建议
- 大数据量时优先使用
BufferedReader。 - 避免频繁创建和关闭输入流对象,尽量复用。






