java.util.scanner_java.util.Scanner的几种next方法

java.util.Scanner,这个类,想必大家都不怎么陌生,在初学Java这门编程语言时,都见过,使用过吧。

63e8073c21729d44bc5286efcdfa7331.png

今天就来说说java.util.Scanner类的几种next方法。

scanner.next()方法

先看看scanner.next()的使用以及效果吧。

dcca0a799e49e83794fa872dba72b3bf.png

如上图代码以及执行结果所示,scanner.next()这个方法会忽略掉输入有效字符前面的空格,输入内容中遇到空格后,从空格开始往后的内容就都不作为扫描结果了。

scanner.nextLine()方法

再来看看scanner.nextLine()这个方法。

对上面的示例代码稍作修改。

e84bf9fcf3c1010a492286c11ee57e86.png

和上面的scanner.next()的执行结果比较便知,scanner.nextLine()方法不会忽略空格,扫描的结果是回车之前的所有输入内容。

scanner.nextInt()方法

上面的两个示例代码都是获取输入的字符串,那如果是要获取数值呢。

看看下面的这段示例代码。

3c5590ea2c76c05c13039cf68b3f7bd6.png

如上面示例所示,scanner.nextInt()的扫描结果会忽略前面的空格,输入内容中遇到空格后,从空格开始往后的内容就都不作为扫描结果了。

scanner.nextBigDecimal()方法

如果想要通过java.util.Scanner来获取一个输入的BigDecimal对象,则可以使用类似下面示例的代码。

5801969bfedea8111e043b1cde3471ea.png

java.util.Scanner还有很多类似的next方法,比如:nextBigInteger()、nextBoolean()、nextByte()、nextDouble()、nextFloat()、nextLong()、nextShort()等等。

scanner.hasNextXxx()

上面的例子都是输入的符合扫描结果类型的内容,那如果是不符合对应类型的内容呢。

看看下面的示例。

960f57abe8941783e39bba8ee5f9ca43.png

就像上面的示例所示,执行时就会抛出异常了。那像这样的要怎么处理呢。

java.util.Scanner类中每个next方法,都有一个对应的hasNext方法与之对应,这个hasNext方法就可以应对这样的情况,达到不抛异常,做友好的处理。

来一段代码示例一下。

047c8f69b9ebbfb5016cf9302b49dfb5.png

像next()方法有对应的hasNext()方法,nextInt()方法有对应的hasNextInt()方法,其他都类似,不再一一列举了。

今天的内容就到这里了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值