Java 基本语法 Scanner类

如何从键盘获取不同类型的变量:需要使用Scanner类。

具体实现步骤

1.导包: import java.util.Scanner;
2.Scanner的实例化:Scanner scan = new Scanner(System.in);
3.调用Scanner类的相关方法,来获取指定类型的变量。

注意

需要根据相应的方法,输入指定类型的值,如果输入的数据类型与要求的类型不匹配是,会报异常:InputMisMatchExcept,导致程序终止。

练习一

import java.util.Scanner;

class ScannerTest{
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);
        int num = scan.nextInt();
        System.out.println(num);
    }
}

Scanner程序结果

练习二

程序

import java.util.Scanner;

class ScannerTest{
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);

        System.out.println("请输入你的姓名:");
        String name = scan.next();
        System.out.println(name);

        System.out.println("请输入你的芳龄:");
        int age = scan.nextInt();
        System.out.println(age);

        System.out.println("请输入你的体重:");
        double weight = scan.nextDouble();
        System.out.println(weight);

        System.out.println("你是否相中了我呢?(true/false)");
        boolean islove = scan.nextBoolean();
        System.out.println(islove);

        //对于char型的获取,Scanner没有提供相关的方法,只能获取一个字符串。
        System.out.println("请输入你的性别:(男/女)");
        String gender = scan.next();//"男"
        char genderChar = gender.charAt(0);//获取索引为0位置上的字符
    }
}

结果

请输入你的姓名:
一痴傻人
一痴傻人
请输入你的芳龄:
23
23
请输入你的体重:
100
100.0
你是否相中了我呢?(true/falsetrue
true
请输入你的性别:(男/女)
女

练习三

练习三
程序

import java.util.Scanner;
class IfTest{
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);

        System.out.println("请输入岳晓鹏期末成绩:");
        int score = scan.nextInt();

        if(score ==100){
            System.out.println("奖励一辆BMW");
        }else if(score <80 && score <=90){
            System.out.println("奖励一个iphone");
        }else if(score >=60 && score <=80){
            System.out.println("奖励一个ipad");
        }else {
            System.out.println("什么奖励也没有");
        }
    }
}

结果

请输入岳晓鹏期末成绩:
75
奖励一个iphone

说明
1.else 结构是可选的。
2.针对条件表达式:

  • 如果多个条件表达式之间是“互斥”关系(或没有交集的关系),那个判断和执行语句声明在上面还是下面,无所谓。

  • 如果多个表达式之间有交集关系的,需要根据实际情况,考虑清楚应该将那个结构声明在上面。

  • 如果多个条件表达式之间有包含的关系,通常条件下,需要将范围小的声明在范围大的上面。否则,范围小的就没机会执行了。

练习四

编写程序:有键盘上输入三个整数,分别存入num1,num2,num3,对她们进行排序(使用if-else if-else),并且从小到大输出。
程序

import java.util.Scanner;
class IfTest4{
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入第一个整数:");
        int num1 = scanner.nextInt();
        System.out.println("请输入第二个整数:");
        int num2 = scanner.nextInt();
        System.out.println("请输入第三个整数:");
        int num3 = scanner.nextInt();

        if(num1 > num2){
            if(num3 > num1){
                System.out.println(num2 + "," + num1 + "," + num3);
            }else if (num3 <= num2){
                System.out.println(num2 + "," + num1 + "," + num3);
            }else{
                System.out.println(num2 + "," + num3 + "," + num1);
            }
        }else{
            if (num3 >= num2){
                System.out.println(num1 + "," + num2 + "," + num3);
            }else if(num3 <= num1){
                System.out.println(num3 + "," + num1 + "," + num2);
            }else{
                System.out.println(num1 + "," + num3 + "," + num2);
            }
        }
    }
}

结果

请输入第一个整数:
6
请输入第二个整数:
5
请输入第三个整数:
9
5,6,9
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值