Java中输入一个数字的方法有哪些?详细步骤教学!
- 后端开发
- 2025-11-02
- 12
在Java中输入一个数字可以通过多种方式实现,以下是一些常用的方法:
使用Scanner类
Scanner 类是Java标准库中的一个类,用于获取用户输入,以下是使用Scanner类输入数字的基本步骤:
- 导入Scanner类。
- 创建Scanner对象。
- 使用nextInt()方法读取整数。
- 使用nextDouble()方法读取浮点数。
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 输入整数 System.out.println("请输入一个整数:"); int number = scanner.nextInt(); System.out.println("你输入的整数是:" + number); // 输入浮点数 System.out.println("请输入一个浮点数:"); double doubleNumber = scanner.nextDouble(); System.out.println("你输入的浮点数是:" + doubleNumber); scanner.close(); } }
使用System.in
Java的System.in是一个输入流,可以通过它来读取用户的输入,以下是如何使用System.in读取整数和浮点数的方法:
- 使用DataInputStream类。
- 使用readInt()方法读取整数。
- 使用readDouble()方法读取浮点数。
import java.io.DataInputStream; import java.io.IOException; public class Main { public static void main(String[] args) { try { DataInputStream dis = new DataInputStream(System.in); // 输入整数 System.out.println("请输入一个整数:"); int number = dis.readInt(); System.out.println("你输入的整数是:" + number); // 输入浮点数 System.out.println("请输入一个浮点数:"); double doubleNumber = dis.readDouble(); System.out.println("你输入的浮点数是:" + doubleNumber); dis.close(); } catch (IOException e) { e.printStackTrace(); } } }
使用BufferedReader
BufferedReader 类是Reader 类的一个子类,用于读取文本数据,以下是如何使用BufferedReader读取整数和浮点数的方法:
- 创建BufferedReader对象。
- 使用readLine()方法读取一行输入。
- 使用Integer.parseInt()方法将字符串转换为整数。
- 使用Double.parseDouble()方法将字符串转换为浮点数。
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) { try { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); // 输入整数 System.out.println("请输入一个整数:"); int number = Integer.parseInt(reader.readLine()); System.out.println("你输入的整数是:" + number); // 输入浮点数 System.out.println("请输入一个浮点数:"); double doubleNumber = Double.parseDouble(reader.readLine()); System.out.println("你输入的浮点数是:" + doubleNumber); reader.close(); } catch (IOException e) { e.printStackTrace(); } } }
使用Console类
Console 类提供了与系统控制台进行交互的方法,以下是如何使用Console类读取整数和浮点数的方法:

- 获取Console对象。
- 使用readInt()方法读取整数。
- 使用readDouble()方法读取浮点数。
import java.io.Console; public class Main { public static void main(String[] args) { Console console = System.console(); // 输入整数 System.out.println("请输入一个整数:"); int number = console.readInt(); System.out.println("你输入的整数是:" + number); // 输入浮点数 System.out.println("请输入一个浮点数:"); double doubleNumber = console.readDouble(); System.out.println("你输入的浮点数是:" + doubleNumber); } }
以下是一个表格,归纳了上述方法:
| 方法 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| Scanner类 | 简单易用,功能丰富 | 需要导入额外包 | 常规输入操作 |
| System.in | 不需要额外导入包 | 功能有限,只适用于整数和浮点数 | 简单输入操作 |
| BufferedReader | 可以读取文本数据 | 需要手动转换数据类型 | 需要读取文本数据 |
| Console类 | 简单易用,直接与系统控制台交互 | 不适用于所有Java环境 | 系统控制台交互 |
FAQs
Q1:如何在Java中输入多个数字?

A1:要输入多个数字,可以使用循环结构,如for或while循环,在每次循环中读取一个数字。
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入数字的数量:"); int count = scanner.nextInt(); for (int i = 0; i < count; i++) { System.out.println("请输入第 " + (i + 1) + " 个数字:"); int number = scanner.nextInt(); System.out.println("你输入的数字是:" + number); } scanner.close(); } }
Q2:如何在Java中验证用户输入的数字是否有效?
A2:要验证用户输入的数字是否有效,可以使用异常处理,如果用户输入的不是一个有效的数字,会抛出InputMismatchException异常。
import java.util.InputMismatchException; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入一个整数:"); while (true) { try { int number = scanner.nextInt(); System.out.println("你输入的整数是:" + number); break; } catch (InputMismatchException e) { System.out.println("输入无效,请输入一个整数:"); scanner.next(); // 清除无效输入 } } scanner.close(); } }
