java多线程    Java入门    vsftp    ftp    linux配置    centos    FRP教程    HBase    Html5缓存    webp    zabbix    分布式    neo4j图数据库    

11. Java Switch Case 条件判断

Java的 Switch Case 语句,可以理解为分支
例子 假设打麻将有四个人 编号为 1 2 3 4 对应名字为 张三,李四,王五,赵六

数据结构

switch(expression){
    case value :
       //语句
       break; //可选
    case value :
       //语句
       break; //可选
    //你可以有任意数量的case语句
    default : //可选
       //语句
}

例子代码

int code = 2;
switch(code){
	case 1:
		System.out.println("我是张三");
		break;
	case 2:
		System.out.println("我是李四");
		break;
	case 3:
		System.out.println("我是王五");
		break;
	case 4:
		System.out.println("我是赵六");
		break;
	default:
		System.out.println("我只是个看客");
}

输出

我是李四

break 表示退出,当满足某个case的时候,停止下方其他case。

上面的执行流程为

问:code 是多少
执行 case 1 发现不满足
执行 case 2 发现满足,立即退出switch

如果不写break

int code = 2;
switch(code){
	case 1:
		System.out.println("我是张三");
	case 2:
		System.out.println("我是李四");
	case 3:
		System.out.println("我是王五");
	case 4:
		System.out.println("我是赵六");
	default:
		System.out.println("我只是个看客");
}

输出

我是李四
我是王五
我是赵六
我只是个看客

程序流程

问:code 是多少
执行 case 1 发现不满足
执行 case 2 发现满足,输出
执行 case 3 不判断是否满足,输出
执行 case 4 不判断是否满足,输出
执行 default 不判断是否满足,输出

如果没有break当前的case一旦判断成功,后续的case都会被执行。

要点:
1. Switch的流程控制,有点象if else 但是在执行效率在多层判断情况下会比if else 高
2. Break 很关键
3. Switch Case里的值不能重复 不能case 1: 下一个继续 case 1:


This entry was posted in JAVA and tagged , . Bookmark the permalink.
月小升QQ 2651044202, 技术交流QQ群 178491360
首发地址:月小升博客https://java-er.com/blog/java-switch-case/
无特殊说明,文章均为月小升原创,欢迎转载,转载请注明本文地址,谢谢
您的评论是我写作的动力.

Leave a Reply