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

亚洲云-浙江高防BGP,至强铂金8270,提供自助防火墙管理,超大内存满足你各种需求

官方网站:点击访问亚洲云官网618活动方案:618特价活动(6.18-6.30)全站首月活动月底结束!地区:浙江高防BGPCPU:至强铂金8270主频7 默频3.61 睿频4.0核心:8核(最高支持64核)内存:8G(最高支持128G)DDR4 3200硬盘:40G系统盘+80G数据盘带宽:上行:20Mbps/下行:1000Mbps防御:100G(可加至300G)防火墙:提供自助 天机盾+金盾 管...

totyun:香港cn2 vps,5折优惠,$6/月,10Mbps带宽,不限流量,2G内存/2核/20g+50g

totyun,新公司,主要运作香港vps、日本vps业务,接入cn2网络,不限制流量!VPS基于KVM虚拟,采用系统盘和数据盘分离,从4G内存开始支持Windows系统...大家注意下,网络分“Premium China”、“Global”,由于站长尚未测试,所以也还不清楚情况,有喜欢吃螃蟹的尝试过不妨告诉下站长。官方网站:https://totyun.com一次性5折优惠码:X4QTYVNB3P...

云俄罗斯VPSJusthost俄罗斯VPS云服务器justg:JustHost、RuVDS、JustG等俄罗斯vps主机

俄罗斯vps云服务器商家推荐!俄罗斯VPS,也叫毛子主机(毛子vps),因为俄罗斯离中国大陆比较近,所以俄罗斯VPS的延迟会比较低,国内用户也不少,例如新西伯利亚机房和莫斯科机房都是比较热门的俄罗斯机房。这里为大家整理推荐一些好用的俄罗斯VPS云服务器,这里主要推荐这三家:justhost、ruvds、justg等俄罗斯vps主机,方便大家对比购买适合自己的俄罗斯VPS。一、俄罗斯VPS介绍俄罗斯...

java switch为你推荐
strcatstrcat函数的使用g2g吉他的效果器的名称是什么意思?(G1G,G2G等等)洗牌算法c语言编程用扑克牌洗牌和发牌最开放的浏览器我国最出名的十种浏览器qq注册账号用QQ注册有几种方法?jqlJQL JINQILIN注册过商标吗?还有哪些分类可以注册?保留两位有效数字什么叫保留两位有效数字radius认证电信或网通的RADIUS认证都记录些什么?谁能说说ISP的宽带帐号检查流程问卷星登陆问卷星的使用步骤layoutsubviews如何让NSSplitView的子View的大小固定
宿迁服务器租用 如何注册中文域名 a5域名交易 dreamhost 香港服务器99idc pw域名 gomezpeer 京东云擎 上海域名 seednet 徐正曦 东莞数据中心 息壤代理 超级服务器 百度云加速 贵阳电信 97rb 网络速度 锐速 香港博客 更多