Java学习—Switch语句

转自: http://www.blogjava.net/Sunday/archive/2007/06/26/126380.html
作者:真善美 http://www.blogjava.net/Sunday/

代码如下:
1)
public class SwitchTest {
	public static void main(String[] args) {
		int x = 0;
		switch (x) {
		default:
			System.out.println("default");
		case 1:
			System.out.println(1);
		case 2:
			System.out.println(2);
		}
	}
}

输出结果如下:
default
1
2

2)
public class SwitchTest {
	public static void main(String[] args) {
		int x = 0;
		switch (x) {
		default:
			System.out.println("default");
		case 1:
			System.out.println(1);
		case 2:
			System.out.println(2);
		case 0:
			System.out.println(0);
		}
	}
}

输出结果如下:
0

3)
public class SwitchTest {
	public static void main(String[] args) {
		int x = 0;
		switch (x) {
		case 0:
			System.out.println(0);
		case 1:
			System.out.println(1);
		case 2:
			System.out.println(2);
		default:
			System.out.println("default");
		}
	}
}

输出结果如下:
0
1
2
default

总结:
switch表达式的值决定选择哪个case分支,如果找不到相应的分支,就直接从"default" 开始输出。
当程序执行一条case语句后,因为例子中的case分支中没有break 和return语句,所以程序会执行紧接于其后的语句。

因为switch首先找匹配,找不到匹配就找default。
第一个例子没有与0匹配的case,就从default开始执行,接着执行下面的case
第二个例子有与0匹配的case,就从case 0开始执行,接着执行下面的case
第三个例子也有与0匹配的case,先执行case 0,再执行剩下的case

你可能感兴趣的:(java,html,.net)