java 如何标准输入
标准输入方法
在Java中,标准输入通常通过System.in结合Scanner或BufferedReader类实现。以下是两种常用方法:
使用Scanner类
Scanner类提供简单的方法读取不同类型的输入数据,适合处理格式化的输入。

import java.util.Scanner;
public class StandardInputExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入字符串: ");
String str = scanner.nextLine();
System.out.print("请输入整数: ");
int num = scanner.nextInt();
System.out.println("输入的字符串: " + str);
System.out.println("输入的整数: " + num);
scanner.close();
}
}
使用BufferedReader类
BufferedReader类提供更高效的读取方式,尤其适合大量数据输入场景。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class BufferedReaderExample {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
System.out.print("请输入字符串: ");
String str = reader.readLine();
System.out.println("输入的字符串: " + str);
reader.close();
}
}
输入数据类型处理
对于非字符串类型的数据,需进行类型转换:

Scanner scanner = new Scanner(System.in);
System.out.print("请输入浮点数: ");
double decimal = scanner.nextDouble();
System.out.print("请输入布尔值(true/false): ");
boolean flag = scanner.nextBoolean();
异常处理
输入过程中可能抛出异常,建议添加异常处理逻辑:
try {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入整数: ");
int value = scanner.nextInt();
System.out.println("输入的值: " + value);
} catch (Exception e) {
System.out.println("输入格式错误");
}
多行输入处理
当需要连续读取多行输入时:
Scanner scanner = new Scanner(System.in);
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
if (line.equals("exit")) break;
System.out.println("当前行: " + line);
}






