Java给我们提供了一个工具类Scanner可以让我们获取到用户的输入。
导包:java.until.Scanner
基本语法
Scanner s=new Scanner(System.in);通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取钱我们一般需要使用hasNext()和hasNextLine()判断是否还有输入的数据。
hasNext()有各种各样的基本数据类型的判断哦!
例如:
public static void main(String[] args) { // TODO Auto-generated method stub int i=0; float f= 0.0F; Scanner scanner=new Scanner(System.in);//创建一个扫描器用来检测用户输入没有 System.out.println("请输入一个整数:"); if (scanner.hasNextInt()) //判断用户输入了没有 { String str=scanner.next(); //使用next方法接收 System.out.println("输出的数字为:"+str); } else { System.out.println("输入的数字不为整数"); } System.out.println("请输入一个小数:"); if (scanner.hasNextFloat()) //判断用户输入了没有 { String str=scanner.next(); //使用next方法接收 System.out.println("输出的小数为:"+str); } else { System.out.println("输入数字不为小数"); } scanner.close(); //凡是io流的东西,用完之后一定要记得关闭。这是程序员的好习惯 }每个基本数据类型类型都有对应的hasNext()检测方法。
写一串代码判断输入多个整数的平均值,当输入非整数时,输出结果。
public static void main(String[] args) { // TODO Auto-generated method stub int a=0; double mean=0.0D; int sum=0; Scanner scanner=new Scanner(System.in); System.out.println("该算术可以判断输入多个整数的平均值,当输入非整数时输出结果"); System.out.println("请输入整数数字:"); while (scanner.hasNextInt()) //判断是否是整数型 { int x=scanner.nextInt(); a+=1;//a=a+1; sum+=x;//sum=sum+x; } mean=(double)sum/a;//计算平均值,不要忘了如果计算是优先之前的数据类型哦,这里需要强制转换一下。 System.out.println("你输入的数字和为:"+sum); System.out.println("平均值为:"+mean); scanner.close(); }