switch语句里不需要必须有break吗

 我来答
仁昌爱娱乐
高粉答主

2019-12-27 · 专注关心娱乐
仁昌爱娱乐
采纳数:760 获赞数:459856

向TA提问 私信TA
展开全部

switch语句里不需要必须有break。

当变量表达式所表达的量与其中一个case语句中的常量相符时,就执行此case语句后面的语句,并依次下去执行后面所有case语句中的语句,除非遇到break;语句跳出switch语句为止。若常量表达式的量与所有case语句的常量都不相符,将继续执行default语句中的语句,然后结束switch语句。

扩展资料:

switch语句非常有用,但在使用时必须谨慎。所写的任何switch语句都必须遵循以下规则:

1、只能针对基本数据类型中的整型类型使用switch,这些类型包括int、char等。对于其他类型,则必须使用if语句。

2、switch()的参数类型不能为实型 。

3、case标签必须是常量表达式(constantExpression),如42或者'4'。

4、case标签必须是惟一性的表达式;也就是说,不允许两个case具有相同的值。

OmniscientiaI
2017-12-06
知道答主
回答量:14
采纳率:100%
帮助的人:9.6万
展开全部
下面是switch的和break的使用方法:没有break的话,除非你能对条件进行精确控制,不然还要这switch有何用?
int i = 5;
switch(i){
case 0:

System.out.println("0");break;

case 1:
System.out.println("1");break;

case 2:
System.out.println("2");break;

default:
System.out.println("default");break;

情况一:若未找到,则执行默认的case。即全部都有break的时候输出:defalut
情况二:当每一个case都不存在break时,JVM并不会顺序输出每一个case对应的返回值,而是继续匹配,匹配不成功则返回默认case。即全部都没有break的时候会输出:defalut
情况三:当每一个case都不存在break时,匹配成功后,从当前case开始,依次返回后续所有case的返回值。即不存在break和当i=1的时候,会输出1,2,defalut
情况四:若当前匹配成功的case不存在break,则从当前case开始,依次返回后续case的返回值,直到遇到break,跳出判断。即当i=1且i=1的case里面没有break的时候,会出现从符合条件的地方输出,直到break跳出。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式