在java中如何输入
使用 Scanner 类从控制台输入
Scanner 是 Java 中最常用的输入工具,位于 java.util 包中。通过创建 Scanner 对象并关联 System.in,可以读取用户从键盘输入的数据。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串: ");
String inputString = scanner.nextLine(); // 读取整行
System.out.print("请输入一个整数: ");
int inputInt = scanner.nextInt(); // 读取整数
System.out.println("输入内容: " + inputString + ", " + inputInt);
scanner.close(); // 关闭资源
}
}
nextLine()读取整行文本(包括空格)。nextInt()、nextDouble()等用于读取特定类型数据。- 需注意调用
nextLine()前若存在其他输入方法(如nextInt()),需额外调用一次nextLine()清除缓冲区。
使用 BufferedReader 提升性能
对于大量输入或需要更高效率的场景,BufferedReader 配合 InputStreamReader 是更优选择。

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.print("请输入文本: ");
String input = reader.readLine();
System.out.println("输入内容: " + input);
reader.close();
}
}
readLine()直接获取整行输入。- 需处理
IOException(通过throws或try-catch)。
命令行参数输入
通过 main 方法的 args 数组接收运行程序时传递的参数。
public class Main {
public static void main(String[] args) {
if (args.length > 0) {
System.out.println("第一个参数: " + args[0]);
}
}
}
运行命令示例:

java Main HelloWorld
- 参数以空格分隔,通过索引访问(如
args[0])。
输入验证与异常处理
确保输入数据的有效性,避免程序因非法输入崩溃。
Scanner scanner = new Scanner(System.in);
try {
System.out.print("请输入整数: ");
int num = scanner.nextInt();
System.out.println("有效输入: " + num);
} catch (Exception e) {
System.out.println("输入无效,请重试。");
} finally {
scanner.close();
}
- 使用
try-catch捕获InputMismatchException等异常。 - 推荐在循环中结合验证逻辑实现重试机制。
文件输入示例
若需从文件读取数据,可使用 Scanner 或 BufferedReader 关联文件路径。
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
try {
Scanner fileScanner = new Scanner(new File("input.txt"));
while (fileScanner.hasNextLine()) {
System.out.println(fileScanner.nextLine());
}
fileScanner.close();
} catch (FileNotFoundException e) {
System.out.println("文件未找到。");
}
}
}
- 文件路径需正确,否则抛出
FileNotFoundException。
通过以上方法,可以灵活应对不同场景下的输入需求。






