if,switch学习

我们知道第一个程序java的入门程序是Hello World所以我们写过:System.out.println("Hello World");

这个是java的输出语句,这个时候我们该怎么想呢,输出语句有了,输入语句是什么呢?计算机的输入肯定离不开键盘 我们可以通过 Scanner 类来获取用户的输入。

Scanner类的使用:

使用方法  1.导入scanner的包  2.实例化scanner类,3.调用相关方法。如下:

 

 注:其中实例化  和  导包 是必不可少的,调用的方法是调用scanner类里面的方法,方法很多可以根据需求来调用,下面举个例子:

    public static void main(String[] args) {
         Scanner scanner = new Scanner(System.in);  
         int nextInt = scanner.nextInt();
         System.out.println("我输入的是一个整数类型:"+nextInt);
         
         String next = scanner.next();
         System.out.println("我输入的是一个字符串类型:"+next);
         
         double nextDouble = scanner.nextDouble();
         System.out.println("我输入的是一个浮点类型:"+nextDouble);
         
         boolean nextBoo = scanner.nextBoolean();
         System.out.println("我输入的是一个布尔类型:"+nextBoo);
    }

 if条件分支语句:

计算机中的if语句,就和语文课本中的如果一样 :如果  条件成立  则怎么样 ;如果  条件不成立  则怎么样

格式:

public static void main(String[] args) {
        /*
         * 如果条件语句成立为true 则执行语句体1 如果不成立为flase,则执行语句体2
         */
        if (2>4/*条件语句*/) {
              //语句体1
        } else {             
             //语句体2
        }
    }

由于分支语句比较简单且好使用,所以下面直接用两个题型来展示一下if分支与句的作用:

public static void main(String[] args) {
        /* if分支语句判断奇数偶素 */        
         Scanner sc = new Scanner(System.in);
         System.out.println("请输入你的数字");
         int num = sc.nextInt();
         if(num%2==0) {
             System.out.println(num+"是偶数");
         }else {
             System.out.println(num+"是奇数");
         }
        
    }

第一道题:判断奇偶数,使用scanner类来输入数,且使用if来进行运算判断是否能被2整除,如果 为true 则 输出 是偶素,为flase则输出 是奇数。

下面的第二道题

public static void main(String[] args) {
        /*
         * 判断成绩是否合格 如果 成绩为90~100 则成绩为A 为80~90则成绩为B; 
         * 为70~80则成绩为C; 为60~70则成绩为D;小于60则成绩不合格;
         *  用if语句来判断该学生成绩等级
         */
        Scanner sc = new Scanner(System.in);
        int chengji = sc.nextInt();
        if (chengji > 90 && chengji <= 100) {
            System.out.println("你的成绩为A");
        }else if (chengji > 80 && chengji <= 90) {
            System.out.println("你的成绩为B");
        }else if (chengji > 70 && chengji <= 80) {
            System.out.println("你的成绩为C");
        }else if (chengji > 60 && chengji <= 70) {
            System.out.println("你的成绩为D");
        }else if (chengji > 0 && chengji <= 60) {
            System.out.println("你的成绩不合格");
        }else {
            System.out.println("输入数据错误,请重新输入");
        }
    }

除去if这个分支语句外,java还有一个switch分支语句。

Switch分支语句:

 代码结构:

public static void main(String[] args) {
        /*
         * switch语句是把小括号中的key值 与case中的值想比较。如果key值等于case的value值
         * 则执行相对应的case内的代码。如果没有一个值是相同的就执行default中的代码
         * break的作用是当执行到break时,就直接跳出switch语句,
         * case可以有n个,但是case 后的value值是独一无二的的不能重复出现
         */

        switch (key) {
        case value:

            break;
        case value:

            break;
        default:
            break;
        }
    }

同样作为分支语句也用两个案例来运行一下子:

/*
         * 需求:模拟电信公司客户通讯选择。 (1)给出用户可以选择的功能选项:0:人工服务;1、投诉服务;2、业务处理服务;3、其他服务。
         * (2)用户根据提示输入不同选项,然后打印输出不同服务信息; (3)要求使用两种方式实现。
         */

        // 方法一
        System.out.println("======================电信功能======================");
        System.out.println("请选择以下功能 0:人工服务 ; 2业务处理服务;3其他服务");
        @SuppressWarnings("resource")
        Scanner scanner = new Scanner(System.in);
        int i = scanner.nextInt();
        if (i == 0) {
            System.out.println("你好,欢迎进入人工服务页面,我是你的人工助手小艾");
        } else if (i == 2) {
            System.out.println("你好,欢迎进入业务处理服务");
        } else if (i == 3) {
            System.out.println("你好,其他服务请按零");
        } else {
            System.out.println("输入有误,请重新输入");
            main(args);
        }

        // 方法二

        System.out.println("======================电信功能======================");
        System.out.println("请选择以下功能 0:人工服务 ; 2业务处理服务;3其他服务");
        @SuppressWarnings("resource")
        Scanner sc = new Scanner(System.in);
        int a = scanner.nextInt();
        switch (a) {
        case 1:
            System.out.println("你好,欢迎进入人工服务页面,我是你的人工助手小艾");
            break;
        case 2:
            System.out.println("你好,欢迎进入业务处理服务");
            break;
        case 3:
            System.out.println("你好,其他服务请按零");
            break;
        default:
            System.out.println("输入有误,请重新输入");
            main(args);
            break;
        }

    }
public static void main(String[] args) {
        /* 
         * 使用switch来判断当前月份为什么季节
         *  */
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入阿拉伯数值1~7");
        int week = sc.nextInt();
        switch (week) {
        case 1:
        case 12:
        case 2:
            System.out.println("你现在处在的月份是冬季");
            break;
        case 3:
        case 4:
        case 5:
            System.out.println("你现在处在的月份是春季");
            break;
        case 6:
        case 7:
        case 8:
            System.out.println("你现在处在的月份是秋季");
            break;
        case 9:
        case 10:
        case 11:
            System.out.println("你现在处在的月份是冬季");
            break;

        default:
            System.out.println("输入有误,请重新输入");
            main(args);
            break;
        }

    }

下面的这个例子利用了switch的特性来缩减了代码量。

if和switch的区别:if后的小括号中只能的表达式,不是true就flase  而switch括号里的不能为布尔型,可以为一个值,或者一个变量,或者一个字符串等。if注重于判断的结果,而switch注重于key与value是否相等。 https://www.cnblogs.com/2979100039-qq-con/p/13060494.html

同样附上几个简答题如下:

 

 

 编程题:

 

 

 

 个人学习,内容简略

posted @ 2020-07-21 19:12  一生的风景  阅读(406)  评论(0编辑  收藏  举报