java,能否深入讲讲switch原理:没有break是真,但num也不等于3和default啊?为什么?

问题描述

没有break是真,但num也不等于3和default啊?为什么?num=2,为什么还会走case 3和default?public class SwitchTest {public static void main(String[] args) {int num = 2;switch (num) {case 1:System.out.println("小白菜");case 2:System.out.println("大白菜");case 3:System.out.println("方便面");default:System.out.println("什么也不吃");}}}

解决方案

这个问题。。 其实很好对于java而言,switch语句有一个特性叫 fallthrough, 就如楼上所说说,条件成立switch开始执行,直到遇到break为。 期间不会再进行case的判断.但对于C#而言,则没有这样的特性这个特性,有时候是很好用的,但也很危险,看你怎么用 具体讨论可以看http://stackoverflow.com/questions/188461/switch-statement-fallthrough-should-it-be-allowed
解决方案二:
当num =2时,条件成立switch开始执行,知道遇到break为止,在这里你没有break,那么会运行到default后面。原理:1.找到起始执行点:start run point2.找到退出点:end point

时间: 2024-09-03 12:49:40

java,能否深入讲讲switch原理:没有break是真,但num也不等于3和default啊?为什么?的相关文章

Java序列化的机制和原理

有关Java对象的序列化和反序列化也算是Java基础的一部分,下面对Java序列化的机制和原理进行一些介绍. Java 序列化算法透析 Serialization(序列化)是一种将对象以一连串的字节描述的过程:反序列化deserialization是一种将这些字节重建成一个对象的过程.Java序列化API提供一种处理对象序列化的标准机制.在这里你能学到如何序列化一个对象,什么时候需要序列化以及Java序列化的算法,我们用一个实例来示范序列化以后的字节是如何描述一个对象的信息的. 序列化的必要性

源码-请教关于java中jxl jar包原理

问题描述 请教关于java中jxl jar包原理 最近使用jxl操作excel,对其中源码有些疑问,表示看不懂,请问哪位大神指导源码中的Java代码是怎么操作Excel的? 解决方案 用pio吧,jxl不支持2010+的office文件 解决方案二: 楼主看看这些java书籍对你有没有用 http://download.csdn.net/album/detail/1191

求问java 异步编程实现的原理是什么?我一直不明白它与回调的区别,求解,谢谢

问题描述 求问java 异步编程实现的原理是什么?我一直不明白它与回调的区别.假如我在执行某个任务的时候我再开启另外一个线程进行监听,这个与异步的实现有什么区别? 解决方案 应该这样理解同步是和异步进行比较的回调只是一种编程方法,让代码更加的优雅,回调是函数式编程的一种说法,相对于面向对像编程时,"回调"就变成"事件监听"这种说法了我们常说的同步回调,指的就是一个代码执行过程中,需要等到回调函数完全执行完后,才能往 下走.异步回调指的是一个代码执行到回调函数时,他可

java中如何理解switch语句参数的对象.what

问题描述 java中如何理解switch语句参数的对象.what java中如何理解switch语句参数的对象.what switch (msg.what) { ......} 解决方案 msg是一个对象,what是其中的一个成员变量,没有什么特别的.

url-关于java的HTTPURLConnection的使用原理

问题描述 关于java的HTTPURLConnection的使用原理 一直对于http协议的请求原理不是很明白,于是做了如下测试 用ServerSocket做了一个服务端,接收请求,并获取输入流打印, 用HTTPURLConnertion向服务端发送请求, 第一次测试时,客户端只使用了输出流,并使用了flush().然后再close,结果服务端什么都没有输出 就报错了 第二次测试,客户端,即使用了输出流,又使用了输入流,然后再close,结果服务端,正常输出了 , 于是迷茫了,到底时怎么回事啊,

java-请问Java中Map的实现原理

问题描述 请问Java中Map的实现原理 如题:请问Java中Map的实现原理,我们都知道map是键值对,那么在java底层是如何实现的,高手在哪里 解决方案 http://zhangshixi.iteye.com/blog/672697 解决方案二: java map实现原理 解决方案三: http://cmsblogs.com/?p=1212 解决方案四: http://zhangshixi.iteye.com/blog/672697

java反射机制的实现原理

java反射机制的实现原理反射机制:所谓的反射机制就是java语言在运行时拥有一项自观的能力.通过这种能力可以彻底的了解自身的情况为下一步的动作做准备.下面具体介绍一下java的反射机制.这里你将颠覆原来对java的理解. Java的反射机制的实现要借助于4个类:class,Constructor,Field,Method:其中class代表的时类对象,Constructor-类的构造器对象,Field-类的属性对象,Method-类的方法对象.通过这四个对象我们可以粗略的看到一个类的各个组 成

Java基础-04.总结switch,for,while,do。while跳转语句

你需要的是什么,直接评论留言. 获取更多资源加微信公众号"Java帮帮" (是公众号,不是微信好友哦) 还有"Java帮帮"今日头条号,技术文章与新闻,每日更新,欢迎阅读 学习交流请加Java帮帮交流QQ群553841695 分享是一种美德,分享更快乐! 1:switch语句(掌握) (1)格式:switch(表达式) {case 值1:语句体1;break;case 值2:语句体2;break;...default:语句体n+1;break;} 格式解释说明:sw

Java制作智能拼图游戏原理及代码_java

今天突发奇想,想做一个智能拼图游戏来给哄女友. 需要实现这些功能 第一图片自定义 第二宫格自定义,当然我一开始就想的是3*3 4*4 5*5,没有使用3*5这样的宫格. 第三要实现自动拼图的功能,相信大家知道女人耍游戏都不是很厉害,所以这个自动拼图功能得有. 其他什么暂停.排行就不写了! 现在重点问题出来了 要实现自动拼图功能似乎要求有点高哦!计算机有可不能像人一样只能: 先追究下本质 拼图游戏其实就是排列问题: 排列有这么一个定义:在一个1,2,...,n的排列中,如果一对数的前后位置与大小顺