点击查看:2015计算机等级考试二级Java入门教程章节汇总
点击查看:2015计算机等级考试二级Java入门教程第三章汇总
3.4 switch语句
switch〔开关)语句使你能够从多个选项中进行选择,这些选项是根据给定表达式的一系列固定值来设置的。这个表达式必须产生一个类型为char,byte, short或者int的结果,而不能是long类型,否则该语句就不会通过编译。通常情况下,它与旋转开关的操作方式非常类似,即都是从一系列固定值的选项中选择一个。例如,在对洗衣机操作时,你可以应用这种方法从机器的不同设置中选取一项。你将转动旋钮来选择你所要的选项,旋钮可对应于棉花、羊毛、人造纺织品等等服装材质的不同位置。
对应这个逻辑的,switch语句为:
switch(wash)
{
case 1 //wash is 1 for cotton
system.out.println(cotton selected);
break;
case 2 //wash is 2 for cotton
system.out.println(Linen selected);
break;
case 3 //wash is 3 for cotton
system.out.println(wool selected);
break;
default: //Not a valid value for wash
system.out.println(Selection error)
break;
在这条switch语句中,在关键字switch后的括号中指定的表达式将决定选择哪一项。
在本例中是变量wash,该变量应该在前面被声明为chax, byte, short或者int类型。你用一个或者多个分情况数值(case values )定义叮能的选择分支,它又被称作分情况标号(caselabels,用关键字case定义。一条switch语句的所有分情况标号都将包含在,witch语句的大括号中,并且可以被任意排列。在上面的例子中,我们使用了三个分情况数值。当switch的表达式结果等于一个给定的分情况数值时,这个分情况数值所对应的分支就被选定。
当选定一个给定的分情况数值时,跟在分情况标号后面的语句将执行。所以,如果wash的结果为2,跟在语句:
case 2: //wash is 2 for Linen
后面的语句将被执行。在本例中是:
System.out.println("Linen selected");
break;
在执行break语句后,紧接着就执行最靠近多分支Sw1tCh开关语句后面的语句。break并不是必需的,但如果在一个分支的尾部没有break语句,就会按顺序执行下一个分支,直到遇到break语句或者到switch语句块结束处。通常很少这样使用。在我们的例子中,default语句后面的break从严格意义上讲是不必要的,但是,当你在switch语句块结束处增加另一个分情况标号时,它会对程序起到保护作用。最后一个分情况语句的break可以被忽略。
在switch语句中,每个需要处理的选项都对应于一个分情况标号,并且必须是惟一的。在上面的例子中使用default语句是可选的。当switch表达式的结果与定义的所有分情况数值都不相等时,default分情况分支就被选择。如果没有default,在switch表达式的结果与所有分情况标号都不匹配时,就会执行位于switch语句大括号之后的语句。
用一个流程图,我们可以说明一般的switch语句的逻辑结构。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |