详解Scanner类
讲解
Scanner
类是 Java 中用于从控制台或其他输入流中读取数据的类。它位于java.util
包中,是一个具体类,而不是抽象类。实例化Scanner
对象时,通常会使用不同的构造方法,其中最常用的构造方法是接收InputStream
、File
或String
作为参数。
样例实现
常见的 Scanner
构造方法示例:
-
从标准输入(控制台)读取:
Scanner scanner = new Scanner(System.in);
-
从文件读取:
File file = new File("example.txt"); Scanner scanner = new Scanner(file); //这两行代码涉及到 File 类和 Scanner 类,分别用于创建文件对象和从文件中读取数据。
-
从字符串读取:
String input = "Hello World!"; Scanner scanner = new Scanner(input);
一旦创建了
Scanner
对象,您可以使用其方法来读取不同类型的数据,如整数、浮点数、字符串等。以下是一些Scanner
常用的方法:
nextInt()
: 读取一个整数。nextDouble()
: 读取一个双精度浮点数。next()
: 读取一个字符串,以空格为分隔符。nextLine()
: 读取一行输入。
import java.util.Scanner;
public class NextLineExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入第一行: ");
String line1 = scanner.nextLine();
System.out.print("请输入第二行: ");
String line2 = scanner.nextLine();
System.out.println("您输入的第一行是: " + line1);
System.out.println("您输入的第二行是: " + line2);
scanner.close();//nextLine()实现示例
}
}
以下是一个简单的例子,演示如何使用 Scanner
从控制台读取用户输入的整数:
import java.util.Scanner;
public class ScannerExample {
public static void main(String[] args) {
// 创建 Scanner 对象,读取控制台输入
Scanner scanner = new Scanner(System.in);
// 提示用户输入整数
System.out.print("请输入一个整数: ");
// 读取用户输入的整数
int userInput = scanner.nextInt();
// 输出用户输入的整数
System.out.println("您输入的整数是: " + userInput);
// 关闭 Scanner 对象
scanner.close();
}
}