Java中的switch分支注意点

Posted 豆芽花花儿酱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中的switch分支注意点相关的知识,希望对你有一定的参考价值。

Java中的switch分支是属于Java中的条件判断中的一种,另一大类属于if...else这种,下面说一下switch分支的几个特点

一、格式

switch(值){
    case 值1 :
           语句01;
           break;
    case 值2 :
           语句02;
           break;
      ......
    default  :
           语句n;
}

①、case后面接的值,是一个具体的值 :数字、字符、字符串

②、结束的标志:一种是遇到break语句,一种是代码执行到最后位置,也就是switch代码的末尾

二、case穿透

当case语句中,没有break时,程序不判断下一句case的值,直接执行下一句case的代码语句,直至遇到break停止

package com.test.shuzu;

public class Switch02 {

	public static void main(String[] args) {
		switch_02();
	}
	private static void switch_02() {
		int a = ‘S‘;

		switch (a) {
		case ‘S‘:
			System.out.println("S");
		case ‘s‘:
			System.out.println("s");
		case ‘a‘:
			System.out.println("a");
		default:
			System.out.println("默认");
		}
	}

}

 执行结果:

S
s
a
默认

三、default语句

default语句在整个switch分支中,有它的特殊性。

首先,default语句可以不放在最后,可以放在switch中的任意位置,但是要注意,如果default如果在其他位置,要加break语句,否则会产生case穿透现象。

其次,default如果在最后,就无需加break;

然后,default语句可以看成是另一种case语句,当其他case不符合条件时,就执行default语句

package com.test.shuzu;

public class Switch01 {
	public static void main(String[] args) {
		switch_01();
	}

	private static void switch_01() {
		int a = ‘S‘;

		switch (a) {
		case ‘s‘:
			System.out.println("s");
			break;
		case ‘a‘:
			System.out.println("a");
			break;
		default:
			System.out.println("默认");
		}
	}
}

 执行结果为:默认

最后,无论default的位置在哪,代码总是先执行所有的case语句,最后执行的default语句;

 




以上是关于Java中的switch分支注意点的主要内容,如果未能解决你的问题,请参考以下文章

Java 分支结构 - if...else/switch

Java 分支结构 - if...else/switch

Java 分支结构 - if...else/switch

Java 分支结构 - if...else/switch

Java中的switch语句怎么使用

Java 分支结构