JAVA - Scanner详解

要使用Scanner必须要先引入java.util.Scanner包,如下:

在引入包之后要使用输入还需先创建Scanner对象,如下:

接下来就可以开始使用Scanner了

1.各种next的用法和区别

1.nextInt是用来读取整数的

2.nextDouble是用来读取双精度的小数的

3.nextFloat是用来读取单精度小数的

以上三种当读取到非本身可读取的类型会报输入类型不匹配异常,如nextInt读取了一个小数

4.next和nextLine都是对字符串进行读取的,但两者是有区别的,它们读取的开始与结束存在差异

2.各种next的读取方法

1.读取开始

next, nextInt, nextDouble, nextFloat 都是一直要读取到可读取的字符才开始读取,在可读取的字符前的空格, tab键 和 enter键都不会进行读取, 而是忽略

nextLine是从最开始进行读取的,遇见enter键就结束读取,无论第一个是不是enter

2.读取结束

next, nextInt, nextDouble, nextFloat都是将enter键, tab键 和空格键 作为结束符的,当读取到结束符后就会停止读取, 当它们停止读取后不会将结束符一起读取, 而是和结束符后面的字符一起存入缓冲区

nextLine是将enter键作为结束符的,当读取到结束符后依旧会将enter一起读取,但是它将enter读取后并不会将enter一起保留下来,它会舍去enter保留结束符前面的字符串

3.异常读取

由于它们之间的不同读取方式,经常会出现enter被下一个nextLine读取,如:

nextLine会读取next保留在缓冲区的首位enter, 可以在next下方加上一个nextLine读取enter键来解决这个问题,nextInt, nextDouble,nextFloat都是一样的

3.hasNextxxx

hasNextInt, hasNext, hasNextLine, hasNextFloat, hasNextDouble都是用来判断输入的是都为其类型,若是返回true,否则返回false

  • 16
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值