他们的作用都是从键盘中接收数据。当程序执行到他们的时候,在命令行中就开始等待键盘输入了,而且要注意的是,这一系列方法的结束标志都是’\n’ 也就是回车(只有回车是终止标志,tab不是),他们从键盘中接收输入的内容,都是读到回车之后结束方法的调用
##### next()方法开始对输入进来的内容进行扫描分割,光标从输入的内容最开始开始向后扫描,就是光标一点点地向后移动。当光标扫描到第一个分隔符(默认是空格)停止扫描,会创建一个String类的对象,里面存储的就是扫描的内容(不包含空格分隔符)返回创建的String对象的引用
##### nextLine():读取输入,包括单词之间的空格和除回车以外的所有符号(即。它读到行尾)。读取输入后,nextLine()将光标定位在下一行。所以它和next()的区别就是它没有分隔符,直接扫描全部的键盘输入内容,并创建对象进行将其引用返回
##### nextInt() 是取next() 然后把字符串解析成一个int数字,它本质是调用了next()方法,然后将next()方法返回的字符串再解析成int型数字返回。
##### hasNextInt() 是判断下次调用next()时否可以得到一个可以安全解析成int的字符串。下一个next()的返回值可以解析为一个数字,即符合数字的格式,那么返回true。注意当下一个字符串不能被解析成数字是,这个方法并不会返回false。
由上面的解释可以发现nextInt和next()是很像的,它也是有分隔符的概念,过程和next()都一样,只是它是把得到的字符串给解析成Int返回,而且只能是数字的字符串,即可以解析成数字的字符串才能调用成功,否则会有异常。