说明:

当表达式的值等于case中的常量,则会执行其中包含的语句块

break用于跳出循环,如果不写,则直接执行下一个常量的语句块,不再去判断表达式的值是否等于下一个case的常量(case穿透)

最后的default表示,如果表达式的值都不匹配case的常量,则执行default带有的语句块,再自己跳出循环,或者写break让他跳出循环也可

 注意事项:

1.switch语句的表达式是一个常量表达式(允许自动转换,如a=ASCII=97),必须是一个整型(cha、short、int、long等)或枚举类型

2.case的判断值必须是常量,不能是变量

3.default语句是可选的,不写的话没有匹配不会出现任何返回

4.break用于执行完语句块后跳出switch语句

5.没有break会一直执行下一个case的语句块,直到遇到break或者刀switch结尾(case穿透)


例:

接受一个输入,判断合格

此处switch的表达式用了一个巧妙的方法去判断

利用穿透实现多个不同常量输出相同语句块,如:


switch和if的比较

最新文章

  1. DDD 领域驱动设计-两个实体的碰撞火花
  2. C#的继承
  3. Android-自定义meta-data扩展数据
  4. 【iHMI43 4.3寸液晶模块】demo例程(版本1.00)发布
  5. Python学习笔记——正则表达式
  6. [008]new、delete及动态内存分配
  7. effective c++ 条款23 perfer nonmember nonfreind function to member function
  8. 一切从编辑器说起:web前端代码编辑器
  9. 快速构建Windows 8风格应用24-App Bar构建
  10. vue搭建项目前奏曲——vue-cli
  11. jquery-hide//一段hide代码实现异步隐藏
  12. Sicily T-primes
  13. JAVA程序设计的第一次作业
  14. 《PHP - CGI/Fastcgi/PHP-FPM》
  15. jq svg 修改image的xmlns:xlink及图片的显隐
  16. Android遍历获取指定目录的文件(转)
  17. Luogu P1951 收费站_NOI导刊2009提高(2)
  18. HDU 6141 I am your Father!(最小树形图)
  19. 用Python爬虫爬取广州大学教务系统的成绩(内网访问)
  20. mysql 5.7版本如何修改密码

热门文章

  1. Identity Server 4使用OpenID Connect添加用户身份验证(三)
  2. CF1703C Cypher 题解
  3. Sharding-jdbc 5.1.2案例
  4. display: table-cell里面文字打点的方法
  5. Linux上安装java
  6. YII模块化处理
  7. Vue el与data的两种写法 && Object.defineProperty方法
  8. 万答#19,MySQL可以禁用MyISAM引擎吗?
  9. Python-基础学习-第二轮
  10. Docker 04 容器命令