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越学越好

ShineServers(5美元/月)荷兰VPS、阿联酋VPS首月五折/1核1G/50GB硬盘/3TB流量/1Gbps带宽

优惠码50SSDOFF 首月5折50WHTSSD 年付5折15OFF 85折优惠,可循环使用荷兰VPSCPU内存SSD带宽IPv4价格购买1核1G50G1Gbps/3TB1个$ 9.10/月链接2核2G80G1Gbps/5TB1个$ 12.70/月链接2核3G100G1Gbps/7TB1个$ 16.30/月链接3核4G150G1Gbps/10TB1个$ 18.10/月链接阿联酋VPSCPU内存SS...

阿里云服务器绑定域名的几个流程整理

今天遇到一个网友,他之前一直在用阿里云虚拟主机,我们知道虚拟主机绑定域名是直接在面板上绑定的。这里由于他的网站项目流量比较大,虚拟主机是不够的,而且我看他虚拟主机已经有升级过。这里要说的是,用过阿里云虚拟主机的朋友可能会比较一下价格,实际上虚拟主机价格比云服务器还贵。所以,基于成本和性能的考虑,建议他选择云服务器。毕竟他的备案都接入在阿里云。这里在选择阿里云服务器后,他就蒙圈不知道如何绑定域名。这...

gcorelabs远东khabarovsk伯力Cloud云服务器测评,告诉你gcorelabs云服务器怎么样

说明一下:gcorelabs的俄罗斯远东机房“伯力”既有“Virtual servers”也有“CLOUD SERVICES”,前者是VPS,后者是云服务器,不是一回事;由于平日大家习惯把VPS和云服务器当做一回事儿,所以这里要特别说明一下。本次测评的是gcorelabs的cloud,也就是云服务器。 官方网站:https://gcorelabs.com 支持:数字加密货币、信用卡、PayPal...

java switch为你推荐
元宝网下载的手机元宝网软件是不是上不去啊?gravatarWordPress头像无法显示怎么办丁奇海贼王里“D”的意思是什么?spawningVC中Error spawning cl.exe错误的解决方法.色库赤峰中色库博红烨锌业有限公司就是冶炼厂在 赤峰的 什么地方,一 人知道吗???cf加速器玩cf ping高用什么加速器比较好数据分析报告范文如何做一个好的数据分析报告新手怎么制作表格怎样能学会制作表格12306注册12306怎么注册账号桌面管理系统WIN7如何启用桌面窗口管理器?
个人域名注册 免费二级域名申请 韩国俄罗斯 cve-2014-6271 香港cdn 紫田 vmsnap3 域名优惠码 美国十次啦服务器 中国电信测速112 183是联通还是移动 东莞数据中心 南通服务器 idc查询 万网空间购买 免费私人服务器 联通网站 万网空间管理 smtp虚拟服务器 路由跟踪 更多