专业编程基础技术教程

网站首页 > 基础教程 正文

道哥说编程---细说java中的switch-case流程控制语句

ccvgpt 2024-08-02 11:50:42 基础教程 31 ℃
package first;
/*
 *本类演示Java流程控制语句之switch-case语句 
 */
public class SwitchDemo {
	public static void main(String[] args) {
		//switch语句由一个控制表达式和多个case标签组成
		//在switch语句中只能接收byte short char 和int四种数据类型和枚举结构
		//不能接受boolean类型(jdk7则可以允许接收String字符串类型)
		/*
		 * 语法:
		 switch(表达式或者变量)
		 {
		 case 值1: //所有case中的值必须唯一
		 {
		 //代码块
		 ......
		 break;
		 }
		 case 值2:
		 {
		 //代码块
		 ......
		 break;
		 }
		 ....
		 default 
		 {
		 代码块 
		 .......
		 }
		 }
 //先对表达式求值,再一一与case进行匹配,遇到匹配值相同的则进入执行
 //case语句里面都没有找到与之相匹配的值 那么进入default语句
		 */
		
		System.out.println("------------例子1-------------");
		char day = 'C';//用switch实现根据day的值输出对应的星期几
		//A--周一 B--周二 C周三 D--周四 E--周五 F--周六 G--周日 其他字符--输出错误
		switch(day)
		{
			case 'A'://注意 是字符 不是字符串 字符用单引号
			{
				System.out.println("星期一");
				break;//跳出当前switch语句
			}
			case 'B':
			{
				System.out.println("星期二");
				break;
			}
			case 'C':
			{
				System.out.println("星期三");
				break;
			}
			case 'D':
			{
				System.out.println("星期四");
				break;
			}
			case 'E':
			{
				System.out.println("星期五");
				break;
			}
			case 'F':
			{
				System.out.println("星期六");
				break;
			}
			case 'G':
			{
				System.out.println("星期天");
				break;
			}
			default:
			{
				System.out.println("条件有误");
			}
			
			//答案是输出星期一
			
			
		}
		System.out.println("------------例子2:演示没有break-------------");
		//在switch语句中case里面的break语句非常重要,当没有break语句的时候
		//程序会从匹配到的case语句开始一直往下执行直到遇到break语句 如果没有找到break语句那么将一直执行到switch语句结束
		//例如
		switch(day)
		{
			case 'A'://注意 是字符 不是字符串 字符用单引号
			{
				System.out.println("星期一");
				//break;//跳出当前switch语句
			}
			case 'B':
			{
				System.out.println("星期二");
				//break;
			}
			case 'C':
			{
				System.out.println("星期三");
				//break;
			}
			case 'D':
			{
				System.out.println("星期四");
				//break;
			}
			case 'E':
			{
				System.out.println("星期五");
				//break;
			}
			case 'F':
			{
				System.out.println("星期六");
				//break;
			}
			case 'G':
			{
				System.out.println("星期七");
				//break;
			}
			default:
			{
				System.out.println("条件有误");
			}

		}
		//OK 到了这个地方大家就可以看到 第二个switch语句把每个case语句都输出来了 因为程序没有读取break的影子 所以就一直找
		//一直找 找到最后都没找到 (大家在看到这个地方的时候自己试着把有些加上有些去掉然后看看结果就更明显了)
	}

}

大家对于以上案例有什么疑问可以在评论区给道哥留言或者@道哥头条好 道哥说编程 就OK啦

道哥说编程---细说java中的switch-case流程控制语句

最近发表
标签列表