当前位置:首页 > 芯闻号 > 充电吧
[导读]1、基础知识java中switch-case语句的一般格式如下:switch(参数) {       case 常量表达式1: break;       case 常量表达式2: break;    

1、基础知识

java中switch-case语句的一般格式如下:

switch(参数) {  
    case 常量表达式1: break;  
    case 常量表达式2: break;  
    ...  
    default: break;  
}  

注解:

(1)、switch接受的参数类型有10种,分别是基本类型的byte,short,int,char,以及引用类型的String(只有JavaSE 7 和以后的版本 可以接受String类型参数),enum和byte,short,int,char的封装类Byte,Short,Integer,Character

case 后紧跟常量表达式,不能是变量。

default语句可有可无,如果没有case语句匹配,default语句会被执行。

case语句和default语句后的代码可不加花括号。

如果某个case语句匹配,那么case后面的语句块会被执行,并且如果后面没有break关键字,会继续执行后面的case语句代码和default,直到遇见break或者右花括号。


2、4个测试用例

(1)、测试一

代码:

package cn.test;

public class SwitchCase01 {

	public static void main(String[] args) {
		
		int i = 5;
		
		switch (i) {
		case 1:
			System.out.println("one");
			break;
		case 10:
			System.out.println("ten");
			break;
		case 5:
			System.out.println("five");
			break;
		case 3:
			System.out.println("three");
			break;
		default:
			System.out.println("other");
			break;
		}
		
		/**
		 * 返回结果: five
		 * 
		 * 
		 */
	}
	
}

结果:



分析:

    在本案例测试中,switch-case语句遵循其基本定义、语法,case语句、default语句没有出现错位情况,且case语句、default语句代码块中都包含break关键字,用于结束switch-case语句。



(2)、测试二

代码:

package cn.test;

public class SwitchCase02 {

	public static void main(String[] args) {

		int i = 5;

		switch (i) {
		case 1:
			System.out.println("one");
		case 10:
			System.out.println("ten");
		case 5:
			System.out.println("five");
		case 3:
			System.out.println("three");
		default:
			System.out.println("other");;
		}

	}

}

结果:



分析: 

在本案例测试中,case语句、default语句的代码块中不包含break关键字。当switch(i)中的变量在case语句中匹配后,case语句的代码块被执行,由于该case语句的代码块中没有break关键字用于结束switch。故在switch-case中,程序继续执行后面的case语句代码和default,直到遇见break或者右花括号。


(3)、测试一

代码:

package cn.test;

public class SwitchCase03 {

	public static void main(String[] args) {

		String x = "three";

		switch (x) {
		case "one":
			System.out.println("switch表达式中类型可用String类型,输入字符串为:" + x);
			break;
		case "two":
			System.out.println("switch表达式中类型可用String类型,输入字符串为:" + x);
			break;
		case "three":
			System.out.println("switch表达式中类型可用String类型,输入字符串为:" + x);
			break;
		case "four":
			System.out.println("switch表达式中类型可用String类型,输入字符串为:" + x);
			break;
		default:
			System.out.println("switch表达式中类型可用String类型");
			break;
		}

	}
}


结果:



分析:

    在本案例测试中,主要是验证switch()-case语句中,switch()函数中的变量是否支持String类型。经验证,switch-case语句中,switch()函数中支持String类型。需要注意的是:在JDK1.7及以上版本中,Switch()函数中变量才支持String类型。



(4)、测试一

代码:

package cn.test;

public class SwitchCase04 {

	public static void main(String[] args) {

		String x = "three";
		//String x = "six";
		
		System.out.println(TestSwitch(x));
		
	}

	public static String TestSwitch(String x) {

		switch (x) {
		case "one":
			x = "1";
			return "return关键字对case代码块中的影响,输出值为:" + x ;
		case "two":
			x = "2";
			return "return关键字对case代码块中的影响,输出值为:" + x ;
		case "three":
			x = "3";
			return "return关键字对case代码块中的影响,输出值为:" + x ;
		case "four":
			x = "4";
			return "return关键字对case代码块中的影响,输出值为:" + x ;
		default:
			x = null;
			return "return关键字对case代码块中的影响,输出值为:" + x ;
		}
	}
}


结果:



分析:

在本案例测试中,主要是验证switch()-case语句中return关键字对case代码块的影响。

根据MyEclipse编辑器所显示的结果,在Switch-case语句中,当case语句代码块中含有return关键字时,其可使程序跳出Switch-case语句。



本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭