1.Scanner的概述和方法介绍
构造方法:
public Scanner(InputStream source);
Scanner sc = new Scanner(System.in);
//System类下有一个静态的字段
//public static final InputStream in; 标准的输入流,接受的是键盘录入
成员方法:
public boolean hasNextInt()
判断是否还有下一个输入项,其中Int可以换成 Double ,Float ,Long 等等.
public int nextInt()
获取下一个输入项,其中Int可以换成 Double ,Float ,Long 等等.
2.Scanner获取数据出现的小问题及解决方案
常用2个方法:
public int nextInt():
获取一个int类型的值
public String nextLine():
获取一个String类型的值,回车键结束
/*public String next():
获取一个String类型的值,空格,tab,回车键结束
next()方法不能得到带空格的字符串。(了解)*/
注意:
当你使用nextInt()接收一个整数之后,再用nextLine()方法接收一个字符串
会发生一个小小的问题(nextLine()无法接受,程序直接结束了)
原因:
nextInt()只能接收int类型数据,输入完成之后的回车(\r\n)会被nextLine()获取,
且nextLine()以\r\n判断输入是否结束,所以nextLine()遇到了\r\n认为该结束了.
解决方案:
1.先获取一个数值后,在创建一个新的键盘录入对象获取字符串
2.把所有的数据都先按照字符串获取,然后转成对应的数据类型(推荐)
|
|