用户交互Scanner
Scanner对象
- 之前我们学的基本语法中并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入。java.util.Scanner是java5的新特征,可以获取用户的输入
基本语法
- Scanner s = new Scanner(system.in);
用完scanner记得关闭,可以节省资源
scanner.close();
关于next()和nextline()的区别
next()
- next()不能得到带有空格的字符串,例如Hello world 只会输出Hello
nextLine()
- 可以获得空白
- 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符
import java.util.Scanner;
public class demo {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
int i= 0;
float f =0.0f;
System.out.println("请输入整数:");
if (scanner.hasNextInt()){
i = scanner.nextInt();
System.out.println("整数数据:"+i);
}else{
System.out.println("输入的不是整数!");
}
System.out.println("请输入小数:");
if (scanner.hasNextFloat()){
f = scanner.nextFloat();
System.out.println("小数数据:"+f);
}else{
System.out.println("输入的不是小数!");
}
scanner.close();
}
}
import java.util.Scanner;
public class demo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double sum = 0;
int m = 0;
while(scanner.hasNextDouble()){
double x = scanner.nextDouble();
m=m+1;
sum=sum+x;
}
System.out.println(m+"个数的和为"+sum);
System.out.println(m+"个数的平均数为"+sum/m);
scanner.close();
}
}