一.定义:
一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器
Scanner 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的 next 方法将得到的标记转换为不同类型的值。
二.构造方法:
三.常用方法:
主要分为两大类:
存在的方法: xxx表示数据类型,如byte,int ,boolean等.
① boolean hasNextXxx():判断是否有下一种类型的数据
②Xxx nextXxx():获取下一个该类型的数据.
import java.io.FileNotFoundException;
import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args) throws FileNotFoundException {
//1.扫描文件中的数据
// Scanner scanner = new Scanner(new File("file/scanner.txt"),"UTF-8");
//2.扫描键盘输入的数据
//Scanner scanner = new Scanner(System.in);
//3.扫描字符串中的数据
Scanner scanner = new Scanner("java是一种编程语言");
while (scanner.hasNextLine()){
String line = scanner.nextLine();
System.out.println("ECHO:"+line);
}
scanner.close();
}
}
四.next()和nextLine()的区别
next():只读取输入直到空格。它不能读两个由空格或符号隔开的单词。此外,next()在读取输入后将光标放在同一行中。(next()只读空格之前的数据,并且光标指向本行)
nextLine():读取输入,包括单词之间的空格和除回车以外的所有符号(即。它读到行尾)。读取输入后,nextLine()将光标定位在下一行。