1.switch 语句

语法:

switch(expression)
{
case value1 : statement1;
break;
case value2 : statement2;
break;
case value3 : statement3;
break;
default: statement4;
}

注意:

  • expression必须是byte、short、int、char类型的,value必须与expression类型兼容的一个常量,而且不能重复。
  • 一定不要望了每个判断后添加break,否则计算机回默认执行为真后面所有的statement;
  • default语句可以出现在任意位置;statement、break、default都可以不写。

2.switch无break

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

运行结果:

2
3

代码解析:case 2 语句后没有break,程序继续向下执行,遇到case 3 语句后的break结束switch语句,故default语句不会执行。

4.case后无statement语句

public class sd {
public static void main(String[] args) {
int month=2;
switch(month)
{
case 12 :
case 1 :
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("输入错误");
}
}
}

5.default 不在末尾

public class A {
public static void main(String[] args) {
int a=2;
switch(a)
{
default: System.out.println("no");
case 0: System.out.println(0);
case 1: System.out.println(1);
}
} }

运行结果:

no
0
1
public class A {
public static void main(String[] args) {
int a=0;
switch(a)
{
default: System.out.println("no");
case 0: System.out.println(0);
case 1: System.out.println(1);
}
} }

运行结果:

0
1

switch 语句的执行逻辑:先找experssion对应的value值,如果存在执行对应语句向下执行直到遇到break;如果不存在则执行default语句再向下执行,遇到break停止。

switch 语句 总结笔记的更多相关文章

  1. PROCESS_YIELD()宏和C语言的switch语句< contiki学习笔记之七>

    写在前面:  按照main()函数的代码一行一行的分析,该是看到了 etimer_process 这个位置.但是etimer_process实现里的一个宏 PROCESS_YIELD()引出了很多故事 ...

  2. Java学习笔记——switch语句的参数类型

    在JDK1.6的版本中,switch后面的括号里面只能放int类型的值,注意是只能放int类型, 但是放byte,short,char类型的也可以. 是因为byte,short,shar可以自动提升( ...

  3. 【代码笔记】Web-JavaScript-JavaScript switch语句

    一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  4. C#学习笔记(四):switch语句

    条件语句 switch语句快速生成枚举方法,复制枚举名在switch()里,双击TAB 快速生成方法,用纠错功能 随机数 using System; using System.Collections. ...

  5. 笔记二:JS的输出、语法、语句、字符串、条件语句、switch语句、for循环、while循环

    1.JS的输出: 注意:JS没有任何打印或者输出的函数 JS输出数据的集中方法:  1.使用window.alert()弹出警告框: 2.使用document.write()方法将内容写到HTML文档 ...

  6. C#学习笔记02--Bool,关系/逻辑运算符, if/switch语句

    一. Bool类型   逻辑判断, C#中只有true和false两个值; 使用场景: 在分支和循环语句中, 常用作为判断条件来使用;   二. 关系运算符   关系运算符 (> < &g ...

  7. 'ALTER TABLE SWITCH' 语句失败。表'MGXXX.dbo.user_XXX' 已分区,但 索引'ix_user_XXX_user_id' 未分区。

    问题描述: 今天在做分区切换的时候把旧log数据切到clear表,遇到了这个问题,顺便做下笔记记录一下解决方法 'ALTER TABLE SWITCH' 语句失败.表'MGXXX.dbo.user_X ...

  8. Go-函数高级使用-条件分支-包管理-for循环-switch语句-数组及切片-与或非逻辑符

    目录 科普 python 注释 # 函数高级 if else if else 包管理 下载第三方包 比较热门的框架 for 循环 for 循环的几种写法 switch 语句 数组及数组切片 数组迭代 ...

  9. Golang的选择结构-switch语句

    Golang的选择结构-switch语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.选择语句应用场景概述 选择结构也称为条件判断,生活中关于判断的场景也非常的多,比如: ( ...

随机推荐

  1. layui+springmvc实现文件异步上传

    一.单文件上传 前端代码 <div class="layui-upload"> <div class="layui-upload-list"& ...

  2. centos7 手动设置时间

    date -s "2020-02-03 23:13:00" hwclock -w clock -w

  3. Exception | java.security.NoSuchProviderException: no such provider: BC

    背景 今天在用PGP key做JWT签名和验签的时候,转换报了如下错误: org.bouncycastle.openpgp.PGPException: exception on setup: java ...

  4. Dubbo Cluster集群那点你不知道的事。

    这是why技术的第33篇原创文章 本周是在家办公的一周,上面的图就是我在家的工位. 工欲善其事,必先利其器.在家办公,我是认真的. 在家里开发的时候有需求是这样的:一个如果接口调用失败,需要自动进行重 ...

  5. 新来个技术总监,禁止我们使用Lombok!

    我有个学弟,在一家小型互联网公司做Java后端开发,最近他们公司新来了一个技术总监,这位技术总监对技术细节很看重,一来公司之后就推出了很多"政策",比如定义了很多开发规范.日志规范 ...

  6. ROS和Gazebo进行机器人仿真(一)

    Gazebo是一种多机器人仿真器,可用于室内外机器人仿真.Gazebo在ROS中有良好的接口,包含ROS和Gazebo的所有控制. 若要实现ROS到Gazebo的通信,我们必须安装ROS-Gazebo ...

  7. web语义化这个坑

    什么是wen语义化:https://www.zhihu.com/question/20455165 标签大全:http://www.w3school.com.cn/tags/tag_html.asp ...

  8. 《Android Studio实战 快速、高效地构建Android应用》--Android Studio操作

    前言 摩尔定律:CPU的处理能力大约18个月翻一倍 Android&Java:想要在Android Studio中开发Android App,必须以充分了解Java为前提(Java流行的原因: ...

  9. https原理总结

    博客搬家: https原理总结 最近在公司项目的服务器上做一些内部接口,要求使用https,于是花时间研究了一波.我们熟知的http在传输时未对数据进行加密,在传输一些敏感信息时存在着不小的安全隐患. ...

  10. Codeforces_817

    A.要求坐标差为移动距离的两倍. #include<bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdi ...