Java中Switch-Case用法小结

2017-09-13 20:39:17来源:CSDN作者:dear_Alice_moon人点击

分享

1、基础知识

javaswitch-case语句的一般格式如下:

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

注解:

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

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

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

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

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


24个测试用例

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语句。



最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台