Scanner 进阶使用
public class Demo_04 {
public static void main(String[] args) {
//定义并初始化值 int_1
int int_1 = 0;
//定义并初始化 float_1
float float_1 = 0.0F;
//新建扫描对象
Scanner scanner = new Scanner(System.in);
//告诉用户该输入整数
System.out.println("请输入整数:");
//判断用户输入的是否是整数
if (scanner.hasNextInt()){
//赋值 int_1 为用户输入的整数
int_1 = scanner.nextInt();
//输出用户输入的整数
System.out.println("整数数据:" + int_1);
//如果用户输入的不是整数
}else {
//告诉用户输入的不是整数
System.out.println("你输入的不是整数");
}
//告诉用户该输入浮点数
System.out.println("请输入浮点数:");
//判断用户输入的是否是浮点数
if (scanner.hasNextFloat()){
//赋值 float_1 为用户输入的浮点数
float_1 = scanner.nextFloat();
//输出用户输入的浮点数
System.out.println("浮点数数据为:" + float_1);
//如果用户输入的不是浮点数
}else {
//告诉用户输入的不是浮点数
System.out.println("你输入的不是浮点数");
}
//关闭 scanner
scanner.close();
}
}
示例
public class Demo_05 {
public static void main(String[] args) {
//输入多个数字,并求其总和与平均数,每输入一个数字用回车确认,通过输入非数字来结束输入并输出结果
//成员数 定义并归零
int member = 0;
//输入的总和 定义并归零
double sum_Double = 0.0;
//创建扫描对象,并记录键盘输入
Scanner scanner = new Scanner(System.in);
//提示用户输入数字
System.out.println("请输入数字:");
//循环判断用户输入的是否是浮点数类型
while (scanner.hasNextDouble()){
//赋值变量 a 为用户输入的数值
double a = scanner.nextDouble();
//成员数自增
member++;
//总和加上用户当前输入的数字
sum_Double = sum_Double + a;
//输出用户当前输入了多少个成员 当前的和 当前的平均数
System.out.println("你输入了 " + member + " 个数字,当前和为 :" + sum_Double + " 平均数为: " + (sum_Double / member));
}
//输出最后的总
System.out.println(member + "个数字的和为:" + sum_Double);
//输出最后的平均数
System.out.println(member + "个数字的平均值为:" + (sum_Double / member));
//关闭scanner
scanner.close();
}
}
输入多个数字,并求其总和与平均数,每输入一个数字用回车确认,通过输入非数字来结束输入并输出结果