java switchJAVA中的switch语句是干什么用的啊?条件语句又是指什么?

java switch  时间:2022-02-24  阅读:()

java中switch语句

switch 语句的格式: switch ( 整型或字符型变量 ) {  case 变量可能值1 :   分支一;  break; case 变量可能值2 :   分支二;  break; case 变量可能值3 :   分支三;  break; ... default : 最后分支; } 在 switch 的语法里,我们要学到4个关键字:switch、case 、break、default。 在 switch ( 变量 ) 这一行里,变量只能是整型或字符型。程序先读出这个变量的值,然后在各个"case"里查找哪个值和这个变量相等,如果相等,就算条件成立,程序执行相应的分支,直到碰上break或者switch语句结束。 了解一下switch,case,break,default的意思,对理解前面的一切也会有帮助,它们分别是:开关,情况,中断,默认(值)。那么用一句话套起来的说法就是:根据开关值的不同,执行不同的情况,直到遇上中断;如果所有的情况都不符合开关值,那么就执行默认的分支。 最后说一下关于switch中非常重要的几个注意点。 第一、switch ( 整型或字符型变量 ) 中,变量的类型如文中所标,只能是整型和字符类型。它们包含 int,char。当然无符类型或不同的长度整型(unsigned int,short,unsigned char)等都可以。另外,枚举类型(enum)内部也是由整型或字符类型实现。所以也可以。实型(浮点型)数就不行,如: float a = 0.123; switch(a) //错误!a不是整型或字符类型变量。 { .... } 第二、case 之后可以是直接的常量数值,如例中的1、2、3、4,也可以是一个使用常量计算式,如2+2等,但不能是变量或带有变量的表达式,如 a * 2等。当然也不能是实型数,如4.1,或2.0 / 2 等。 switch(formWay) { case 2-1 : //正确 ... case a-2 : //错误 ... case 2.0 : //错误 ... } 另外,在case 与常量值之后,需要一个冒号,请注意不要疏忽。 第三、break 的作用。 break 使得程序在执行完选中的分支后,可以跳出整个switch语句(即跳到switch接的一对{}之后),完成switch。如果没有这个break,程序将在继续前进到下一分支,直到遇到后面的break或者switch完成。 比如,假设现在程序进入case 1: 中的分支,但case 1 的分支这回没有加break: case 1 : System.out.println("您是通过搜索引擎来到本网站的。"); case 2 : System.out.println("您是通过朋友介绍来到本网站的。"); 那么,程序在输出 "您是通过搜索引擎来到本网站的。" 之后,会继续输出case 2中的 "您是通过朋友介绍来到本网站的。" 。 请大家将前面实例中的代码片段改为如下(红色部分,即将所有的break都通过加//使之无效。): ...   case 1 : System.out.println("您是通过搜索引擎来到本网站的。" ); //break; case 2 : System.out.println("您是通过朋友介绍来到本网站的。"); //break; case 3 : System.out.println("您是通过报刊杂志来到本网站的。"); //break; case 4 : System.out.println("您是通过其它方法来到本网站的。"); //break; default : System.out.println("错误的选择!请输入1~4的数字做出选择。"); ... 运行后,结果会是如何?请大家动手试试,然后在作业中回答我。 第四、default是可选中,前面我们已经说过它的用处,及如果没有default,程序在找不到匹配的case分支后,将在switch语句范围内不做什么事,直接完成switch。大家也可以在实例中将default的代码注释掉,然后试运行,并且在选择时输入5。 ... //default : //cout << "错误的选择!请输入1~4的数字做出选择。" << endl; ... 第五、必要时,可在各个case中使用{}来明确产生独立的复合语句。 前面我们在讲if...语句和其它流程控制语句时,都使用{}来产生复合语句: if (条件) { 分支一; } 除非在分支中的语句正好只有一句,这里可以不需要花括号{}。但在switch的各个case语句里,我们在语法格式上就没有标出要使用{},请看: switch ( 整型或字符型变量 ) {  case 变量可能值1 :   分支一;  break; case 变量可能值2 : .... } 一般教科书上只是说 case 分支可以不使用{},但这里我想提醒大家,并不是任何情况下case分支都可以不加{},比如你想在某个case里定义一个变量: switch (formWay) { case 1 : int a=2; //错误。由于case不明确的范围,编译器无法在此处定义一个变量。 ... case 2 : ... } 在这种情况下,加上{}可以解决问题。 switch (formWay) { case 1 :  {  int a=2; //正确,变量a被明确限定在当前{}范围内。 ...  }  case 2 : ... }

JAVA中的switch语句是干什么用的啊?条件语句又是指什么?

Switch 语句用于将一个表达式的值同许多其他值比较,并按比较结果选择下面执行哪些语句,Switch语句的使用格式如下: switch(表达式) { case1: 语句块1 Break; ... casen: 语句块n Break; default: 语句块n+1 Break; } 例如 我们要将1~3对应的星期几的英文单词打印出来,程序代码如下: int x=2; switch(x) { case 1: System.out.println("Monday"); break; case 2: System.out.println("Tuesday"); break; case 3: System.out.println("Wedensday"); break; default: System.out.println("sorry,i have no idea!"); } 因为x=2 所以结果就是 Tuesday 希望这些能帮助你理解!祝你JAVA越学越好

7月RAKsmart独立服务器和站群服务器多款促销 G口不限量更低

如果我们熟悉RAKsmart商家促销活动的应该是清楚的,每个月的活动看似基本上一致。但是有一些新品或者每个月还是有一些各自的特点的。比如七月份爆款I3-2120仅30美金、V4新品上市,活动期间5折、洛杉矶+硅谷+香港+日本站群恢复销售、G口不限流量服务器比六月份折扣力度更低。RAKsmart 商家这个月依旧还是以独立服务器和站群服务器为主。当然也包括有部分的低至1.99美元的VPS主机。第一、I...

恒创新客(317元)香港云服务器 2M带宽 三网CN2线路直连

恒创科技也有暑期的活动,其中香港服务器也有一定折扣,当然是针对新用户的,如果我们还没有注册过或者可以有办法注册到新用户的,可以买他们家的香港服务器活动价格,2M带宽香港云服务器317元。对于一般用途还是够用的。 活动链接:恒创暑期活动爆款活动均是针对新用户的。1、云服务器仅限首次购买恒创科技产品的新用户。1 核 1G 实例规格,单个账户限购 1台;其他活动机型,单个账户限购 3 台(必须在一个订单...

HostYun 新增可选洛杉矶/日本机房 全场9折月付19.8元起

关于HostYun主机商在之前也有几次分享,这个前身是我们可能熟悉的小众的HostShare商家,主要就是提供廉价主机,那时候官方还声称选择这个品牌的机器不要用于正式生产项目,如今这个品牌重新转变成Hostyun。目前提供的VPS主机包括KVM和XEN架构,数据中心可选日本、韩国、香港和美国的多个地区机房,电信双程CN2 GIA线路,香港和日本机房,均为国内直连线路,访问质量不错。今天和大家分享下...

java switch为你推荐
洗牌算法c语言编程用扑克牌洗牌和发牌最开放的浏览器网页浏览器有哪些啊?李昊天铠甲勇士2刑天的李昊天秘密是什么李昊天铠甲勇士刑天中人物资料vipjrvipjr英语怎么样?靠谱吗?spawningVC中Error spawning cl.exe错误的解决方法.欢迎页面怎样取消“欢迎页面”?系统论坛安卓系统论坛哪个好?qq业务中心QQ业务怎么开通?什么是SOA什么是cookies 有什么作用
域名主机 深圳虚拟主机 php空间租用 如何注册中文域名 ddos 特价空间 gomezpeer Hello图床 监控宝 好看的桌面背景图片 免费博客空间 500m空间 刀片服务器是什么 双十一秒杀 tna官网 太原网通测速平台 搜索引擎提交入口 国外视频网站有哪些 国外在线代理服务器 lamp怎么读 更多