java Scanner类

java.util.Scanner

一个简单的文本扫描器,可以使用正则表达式解析基元类型和字符串。

扫描器使用分隔符模式将其输入拆分为标记,默认情况下,分隔符模式与空白匹配。然后,可以使用各种 next 方法将生成的标记转换为不同类型的值。

构造方法摘要

构造器Scanner()

Scanner(File source)
构造一个新的 Scanner,它生成的值是从指定文件扫描的。

Scanner(File source, String charsetName)
构造一个新的 Scanner,它生成的值是从指定文件扫描的。

Scanner(InputStream source)
构造一个新的 Scanner,它生成的值是从指定的输入流扫描的。

Scanner(InputStream source, String charsetName)
构造一个新的 Scanner,它生成的值是从指定的输入流扫描的。

Scanner(Path source)
构造一个新的 Scanner,它生成的值是从指定文件扫描的。

Scanner(Path source, String charsetName)
构造一个新的 Scanner,它生成的值是从指定文件扫描的。

Scanner(Readable source)
构造一个新的 Scanner,它生成的值是从指定源扫描的。

Scanner(ReadableByteChannel source)
构造一个新的 Scanner,它生成的值是从指定信道扫描的。

Scanner(ReadableByteChannel source, String charsetName)
构造一个新的 Scanner,它生成的值是从指定信道扫描的。

Scanner(String source)
构造一个新的 Scanner,它生成的值是从指定字符串扫描的。
方法摘要

返回类型  方法

void	close()
关闭此扫描器。

Pattern	delimiter()
返回此 Scanner 当前正在用于匹配分隔符的 Pattern。

String	findInLine(Pattern pattern)
试图在忽略分隔符的情况下查找下一个指定模式。

String	findInLine(String pattern)
试图在忽略分隔符的情况下查找下一个从指定字符串构造的模式。

String	findWithinHorizon(Pattern pattern, int horizon)
试图查找下一个指定模式。

String	findWithinHorizon(String pattern, int horizon)
试图在忽略分隔符的情况下查找下一个从指定字符串构造的模式。

boolean	hasNext()
有输入数据,则返回true。

boolean	hasNext(Pattern pattern)
与指定的模式匹配,则返回true。

boolean	hasNext(String pattern)
与指定字符串构造的模式匹配,则返回true。

boolean	hasNextLine()
读取到有效字符后,返回true。

String	next()
有输入数据,则返回字符串数据。

String	next(Pattern pattern)
与指定的模式匹配,则返回字符串数据。

String	next(String pattern)
与指定字符串构造的模式匹配,则返回字符串数据。

String	nextLine()
读取到有效字符后才可以结束输入


IOException	ioException()
返回此 Scanner 的底层 Readable 最后抛出的 IOException。

Locale	locale()
返回此扫描器的语言环境。

MatchResult	match()
返回此扫描器所执行的最后扫描操作的匹配结果。

int	radix()
返回此扫描器的默认基数

void remove()
Iterator 的这种实现不支持移除操作。

Scanner	reset()
重置此扫描器。

Scanner	skip(Pattern pattern)
在忽略分隔符的情况下跳过与指定模式匹配的输入信息。

Scanner	skip(String pattern)
跳过与从指定字符串构造的模式匹配的输入信息。

String	toString()
返回此 Scanner 的字符串表示形式。

Scanner	useDelimiter(Pattern pattern)
将此扫描器的分隔模式设置为指定模式。

Scanner	useDelimiter(String pattern)
将此扫描器的分隔模式设置为从指定 String 构造的模式。

Scanner	useLocale(Locale locale)
将此扫描器的语言环境设置为指定的语言环境。

Scanner	useRadix(int radix)
将此扫描器的默认基数设置为指定基数。

boolean	hasNextInt()
输入为int值,则返回true。

boolean	hasNextInt(int radix)
输入为默认基数中的int值,则返回true。

int	nextInt()
返回输入的数字

int	nextInt(int radix)
返回输入的数字,默认基数10

next() 与 nextLine() 区别

next():

1、一定要读取到有效字符后才可以结束输入。

2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。

3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
next() 不能得到带有空格的字符串。

nextLine():

1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。

2、可以获得空白。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值