博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
switch… case 语句的用法
阅读量:4359 次
发布时间:2019-06-07

本文共 1539 字,大约阅读时间需要 5 分钟。

 
public class Test7 {
public static void main(String[] args) {
int i=5; switch(i) {
case 1: System.out.println("one"); case 10: System.out.println("ten"); case 5: System.out.println("five"); case 3: System.out.println("three"); default: System.out.println("other"); } } }
 

è 结果是:

five

three

other

 

 
switch(表达式) {
case 常量表达式1:语句1; .... case 常量表达式2:语句2; default:语句; }
 

switch的用法是判断case后面的表达式和switch后面的表达式是否相匹配,一旦case匹配,就会顺序执行后面的程序代码,而不管后面的case是否匹配,直到遇见break。

如上所给的代码中,由于i等于5,和前面的两个case都不匹配,所以结果中并没有one和ten的。而第三个case中的5就和switch中i的值匹配,因此就会打印出five的,由于没有遇到break所以就会顺序执行很面的代码,打印出three和other

 

对于流程控制中的switch-case语句,一直是我的一个弱项.

 

每当考试或者面试笔试的时候,总是丈二和尚摸不着头脑,我想这应该是我基础太差的原因吧!

 

为了彻底解决这个心病,不得不花点功夫了!

 

首先从原理上来阐述这个问题:

 
switch(表达式) { case 常量表达式1:语句1; .... case 常量表达式2:语句2; default:语句; }
 

1.default就是如果没有符合的case就执行它,default并不是必须的.

 

2.case后的语句可以不用大括号. case 后面必须是常量表达式constant expressions, 错误表示如: case x .

 

3.switch语句的判断条件可以接受int,byte,char,short, enum不能接受其他类型.

 

4.一旦case匹配,就会顺序执行后面的程序代码,而不管后面的case是否匹配,直到遇见break,利用这一特性可以让好几个case执行统一语句.

 

原理归原理,下面是几个容易混淆的例子.

 

1.标准型(case后面都有break语句)

 

 
int i=3; switch(i) {     case 1:     System.out.println(1);     break;     case 2:     System.out.println(2);     break;     case 3:     System.out.println(3);     break;     default:     System.out.println("default");     break; }
 

 

输出结果:

3

转载于:https://www.cnblogs.com/wcyBlog/p/3896395.html

你可能感兴趣的文章
面向对象程序设计
查看>>
Java对图片压缩
查看>>
webstorm 2017 激活破解方法大全
查看>>
实习结束
查看>>
Office 中的各种小tips(更新中)
查看>>
Thunder团队Final周贡献分分配结果
查看>>
matlab之kmeans聚类用法
查看>>
Recover Binary Search Tree
查看>>
动态规划-带权区间问题
查看>>
fstream,sstream的学习记录
查看>>
PAT 1061. Dating
查看>>
Transaction
查看>>
JAVA内存解析
查看>>
20180925-7 规格说明书-吉林市2日游
查看>>
Windows下VMware14黑屏
查看>>
Nginx解析PHP
查看>>
PHP之选择排序法
查看>>
beego小技巧两则:通过命令行自定义端口和环境,url中带有中划线处理
查看>>
在k8s集群中,利用prometheus的jmx_exporter进行tomcat的JVM性能监控,并用grafana作前端展示...
查看>>
伤透了心的pytorch的cuda容器版
查看>>