1、首先的一个区别是:
nextInt()读取结果为一个int类型数据,返回int值
nextFloat()读取结果为float类型,返回float值
next()读取结果为String类型,返回string类型
next Line()读取结果为String类型,返回string类型
2、回车符之间的区别
- 其实我么发现next(),nextInt()和nextFloat()看到空格符或回车符都认为读取结束,此时不会读取回车符。
- 意思就是回车符只会留在这里等待下一个可以读取回车符号的读取流来把这个回车符接收掉
- nextLine()也是以回车符为结束,并且只是以回车符结束,并且会读取回车符。
3、最重要的区别
分析:这里我们首先看到,我这里是故意把nextInt()放在了nextLine()前面,目的就是测试这个回车符读取的问题。
当我们首先输入数字的时候,因为nextInt()只会以为空格和回车符结束,但是此时按下了回车,next()不会读取回车符,但是接下来的nextLine()会读取回车符,又因为nextLine()以回车符结束,所以此时直接就跳过了我们输入,程序直接结束了。
解决方式:
我们先使用nextLine()方法来读取输入,然后再进行接收数据的类型转换就可以顺利解决了!