栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java笔记 --- switch分支

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java笔记 --- switch分支

一、switch分支 基本语法:

  switch(表达式){

     case常量1: 

     语句块1;

   break;

   case常量2;

   语句块2;

   break;

default语句块;

   break;

二、流程图

 三、入门练习
package demo03;

import java.util.Scanner;

public class Switch01 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        //定义一个变量
        System.out.println("请输入星期的天数");
        char day = scanner.next().charAt(0);
        switch (day) {
            case 'a':
                System.out.println("星期一");
                break;
            case 'b':
                System.out.println("星期二");
                break;
            case 'c':
                System.out.println("星期三");
                break;
            case 'd':
                System.out.println("星期四");
                break;
            case 'e':
                System.out.println("星期五");
                break;
            case 'f':
                System.out.println("星期六");
                break;
            case 'j':
                System.out.println("星期天");
                break;
            default:
                System.out.println("没有找到");
        }
    }
}

四、注意事项 

1、表达式数据类型,应和case后的常量类型一致,或者是可以自动转成可以相互比较的类型,比如输入的是字符,而常量是int。

package demo03;

public class Switch02 {
    public static void main(String[] args) {
        char num = 'c';
        switch (num){
            case 'c':
                System.out.println("money");
            case "aa" :
                System.out.println("hello");
            default:
                System.out.println("kay");
        }
    }
}
 

 2、switch(表达式)中表达式的返回值必须是: (byte,short,int,char,enum,String)

package demo03;

public class Switch02 {
    public static void main(String[] args) {
        long num = 222;
        switch (num){
            case 5555:
                System.out.println("money");
            case 66 :
                System.out.println("hello");
            default:
                System.out.println("kay");
        }
    }
}

 3、case子句中的值必须是常量(1,'a' )或者是常量表达式,而不能是变量

package demo03;

public class Switch02 {
    public static void main(String[] args) {
        char num = 22;
        int sum = 13;
        switch (sum){
            case 5:
                System.out.println("money");
            case  num :
                System.out.println("hello");
            default:
                System.out.println("kay");
        }
    }
}

4、default子句是可选的, 当没有匹配的case时, 执行default,如果没有default 子句,有没有匹配任何常量,则没有输出。

5、break语句用来在执行完一个case分支后使程序跳出switch语句块; 如果没有写break,程序会顺序执行到switch结尾,除非遇到break; 

五、练习一

使用switch把小写类型的char型转为大写(键盘输入)。只转换a, b,c, d, e.其它的输出"other'。

package demo03;

import java.util.Scanner;

public class Test05 {
    public static void main(String[] args) {
        System.out.println("请输入一个字母");
        Scanner scanner = new Scanner(System.in);
        char key = scanner.next().charAt(0);
        switch (key){
            case 'a':
                System.out.println('A');
                break;
            case 'b':
                System.out.println('B');
                break;
            case 'c':
                System.out.println('C');
                break;
            case 'd':
                System.out.println('D');
                break;
            case 'e':
                System.out.println('E');
                break;
            default:
                System.out.println("other");
                break;
        }
    }
}

 练习二

对学生成绩大于60分的,输出合格”。低于60分的,输出"不合格”。(注:输入的成绩不能大于100)。

package demo03;

public class Test06 {
    public static void main(String[] args) {
        double result = 80.5;
        if (result <= 100 && result >= 0){
            switch ((int)( result /60 )){
                case 1:
                    System.out.println("成绩及格");
                    break;
                case 0:
                    System.out.println("成绩不及格");
                    break;
             }
        } else {
            System.out.println("成绩输入有误");
        }
    }
}

 练习三

根据用于指定月份,打印该月份所属的季节。3,4,5 春季6,7,8夏季9,10,11秋季12, 1, 2冬季。

package demo03;

public class Test07 {
    public static void main(String[] args) {
        int month = 3;
        switch (month){
            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;
            case 12:
            case 1:
            case 2:
                System.out.println("冬季");
                break;
            default:
                System.out.println("月份不对");
        }
    }
}

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/424565.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号