Scanner类详解
本文主要介绍Java中Scanner类的原理与用法。
Scanner类的结构:
Scanner类的声明:
public final class Scanner extends Object implements Iterator<String>
Scanner类的内容
- Scanner类是一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。这里的意思是:Scanner类默认情况下使用空白字符作为输入的内容定界符,也就是使用内容为空白字符的正则表达式对输入内容进行分割。
- Scanner类的构造方法可以接受任何类型的输入对象,包括:File对象,InputStream,Readable,String。(Readable是Java 5中新加入的接口,表示具有read()方法的某种东西)。
- 借助于Scanner类的正则表达式扫描,所有的输入、分词、翻译的操作都隐藏在不同类型的next方法中。
- Scanner类的next方法简介:
- 普通的next()方法返回下一个String类型的内容。
- 所有的基本数据类型(char除外)都有相对应的next()方法,包括BigDecimal和BigInteger。
- 所有的next()方法只有再找到一个完成的分词后才会返回。
- Scanner类还有相对应的hasNext()方法,用于判断下一个输入分词是否是所需的类型。
- Scanner类有一个假设,在输入结束时会抛出IOException,而Scanner类会把这个异常吞掉。
- Scanner的定界符:
- 默认情况下Scanner类的定界符为空白字符,可以通过useDelimiter()方法设置定界符。同时,可以使用delimiter()方法返回当前正在作为定界符使用的Pattern对象。
本文我转载,原文地址为:http://blog.csdn.net/wy_zhang/article/details/47998803