Java中Scanner类的使用方法详解

4星 · 超过85%的资源 需积分: 44 128 下载量 168 浏览量 更新于2024-09-17 4 收藏 3KB TXT 举报
Java 中 Scanner 类的用法 Java 中的 Scanner 类是 Java 5.0 引入的一种新的输入输出控制类,旨在简化输入输出流控制,取代传统的输入输出流控制方式。Scanner 类提供了多种方法来读取输入流,并将其转换为所需的数据类型。 Scanner 类的基本使用方法 Scanner 类的使用非常简单,首先需要 import java.util.Scanner; 并创建一个 Scanner 对象,例如:Scanner reader = new Scanner(System.in); 其中 System.in 代表标准输入流。 Scanner 类的方法 Scanner 类提供了多种方法来读取输入流,包括: * `nextByte()`: 读取下一个 byte 类型的值 * `nextDouble()`: 读取下一个 double 类型的值 * `nextFloat()`: 读取下一个 float 类型的值 * `nextInt()`: 读取下一个 int 类型的值 * `nextLine()`: 读取下一个字符串 * `nextLong()`: 读取下一个 long 类型的值 * `nextShort()`: 读取下一个 short 类型的值 这些方法可以根据需要读取不同的数据类型。 hasNext 方法 Scanner 类还提供了一些 hasNext 方法,用于判断输入流中是否还有下一个值可以读取,包括: * `hasNextByte()`: 判断是否还有下一个 byte 类型的值 * `hasNextDouble()`: 判断是否还有下一个 double 类型的值 * `hasNextFloat()`: 判断是否还有下一个 float 类型的值 * `hasNextInt()`: 判断是否还有下一个 int 类型的值 * `hasNextLine()`: 判断是否还有下一个字符串 * `hasNextLong()`: 判断是否还有下一个 long 类型的值 * `hasNextShort()`: 判断是否还有下一个 short 类型的值 这些方法可以用于循环读取输入流中的所有值。 示例代码 下面是一个使用 Scanner 类读取输入流中的所有 double 类型的值,并计算其总和的示例代码: ```java import java.util.*; public class Example { public static void main(String[] args) { System.out.println("请输入一些数字:"); Scanner reader = new Scanner(System.in); double sum = 0; int m = 0; while (reader.hasNextDouble()) { double x = reader.nextDouble(); m = m + 1; sum = sum + x; } System.out.printf("%d 个数字的总和是:%f\n", m, sum); System.out.printf("%d 个数字的平均值是:%f\n", m, sum / m); } } ``` 在这个示例中,我们使用 Scanner 类读取输入流中的所有 double 类型的值,并计算其总和和平均值。 结论 Java 中的 Scanner 类提供了一个简洁的方式来读取输入流,并将其转换为所需的数据类型。通过使用 Scanner 类,可以简化输入输出流控制,提高编程效率。