流程控制语句

1.1 选择结构switch

switch 条件语句也是一种很常用的选择语句,它和if条件语句不同,它只能针对某个表达式的值作出判断,从而决定程序执行哪一段代码。例如,在程序中使用数字1~7来表示星期一到星期天,如果想根据某个输入的数字来输出对应中文格式的星期值,可以通过下面的一段伪代码来描述:

switch (表达式){
	case 目标值1:
		执行语句1
		break;
	case 目标值2:
		执行语句2
		break;
	......
	case 目标值n:
		执行语句n
		break;
	default:
		执行语句n+1
		break;
}

 witch语句将表达式的值与每个case中的目标值进行匹配,如果找到了匹配的值,会执行对应case后的语句,如果没找到任何匹配的值,就会执行default后的语句。switch语句中的break关键字将在后面的做具体介绍,此处,我们只需要知道break的作用是跳出switch语句即可。

switch语句中的表达式只能是byteshortcharint类型的值,如果传入其它类型的值,程序会报错。但上述说法并不严谨,实际上在JDK5.0中引入的新特性enum枚举也可以作为switch语句表达式的值,在JDK7.0中也引入了新特性,switch语句可以接收一个String类型的值。

1.2 选择结构switch练习

public class SwitchDemo01 {
	public static void main(String[] args) {
		int week = 5;
		switch (week) {
		case 1:
			System.out.println("星期一");
			break;
		case 2:
			System.out.println("星期二");
			break;
		case 3:
			System.out.println("星期三");
			break;
		case 4:
			System.out.println("星期四");
			break;
		case 5:
			System.out.println("星期五");
			break;
		case 6:
			System.out.println("星期六");
			break;
		case 7:
			System.out.println("星期天");
			break;
		default:
			System.out.println("输入的数字不正确...");
			break;
		}
	}
}

  

在使用switch语句的过程中,如果多个case条件后面的执行语句是一样的,则该执行语句只需书写一次即可,这是一种简写的方式。例如,要判断一周中的某一天是否为工作日,同样使用数字1~7来表示星期一到星期天,当输入的数字为12345时就视为工作日,否则就视为休息日。接下来通过一个案例来实现上面描述的情况,如下所示。SwitchDemo02.java

public class SwitchDemo02 {
	public static void main(String[] args) {
		int week = 2;
		switch (week) {
		case 1:
		case 2:
		case 3:
		case 4:
		case 5:
			// 当 week 满足值 1、2、3、4、5 中任意一个时,处理方式相同
			System.out.println("今天是工作日");
			break;
		case 6:
		case 7:
			// 当 week 满足值 6、7 中任意一个时,处理方式相同
			System.out.println("今天是休息日");
			break;
		}
	}
}
原文地址:https://www.cnblogs.com/jacksonxiao/p/11188638.html