📅  最后修改于: 2023-12-03 14:42:21.595000             🧑  作者: Mango
Java.util.Scanner类是Java语言中的一个标准类,它主要用来将简单的文本解析为基本类型或字符串。Scanner类通常用于从键盘、文件或网络输入流中获取输入。
以下是Scanner类比较常用的方法:
Scanner类有多个构造方法,可以指定不同的输入源,例如:
Scanner scanner = new Scanner(System.in); // 从标准输入读取
Scanner scanner1 = new Scanner(new File("input.txt")); // 从文件读取
Scanner scanner2 = new Scanner("Some text"); // 从字符串读取
该方法会读取输入源中的下一个标记(默认情况下是以空白符分隔的字符串),返回一个字符串。使用示例:
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.next();
System.out.println("您输入的字符串是:" + str);
该方法会读取输入源中的下一个整数,并返回它。使用示例如下:
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个整数:");
int a = scanner.nextInt();
System.out.println("您输入的整数是:" + a);
该方法会读取输入源中的下一行文本,并将其作为字符串返回。使用示例如下:
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.nextLine();
System.out.println("您输入的字符串是:" + str);
假设有一个名为input.txt的文件,其中包含以下内容:
A 1
B 2
C 3
我们可以使用Scanner类读取这个文件的内容,并将其放入一个HashMap中:
import java.io.File;
import java.io.FileNotFoundException;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class FileScanner {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>();
try {
Scanner scanner = new Scanner(new File("input.txt"));
while (scanner.hasNext()) {
String key = scanner.next();
int value = scanner.nextInt();
map.put(key, value);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
System.out.println(map);
}
}
运行该程序,输出如下:
{A=1, B=2, C=3}
使用Scanner类时,需要注意以下几点: