switch 分支结构
1. 基本语法
2. 流程图
-
- 画出 swtich 出流程
- 案例说明流程图
3. 快速入门
- 案例:Switch01.java
请编写一个程序,该程序可以接收一个字符,比如:a,b,c,d,e,f,g
a 表示星期一,b 表示星期二 …
根据用户的输入显示相应的信息.要求使用 switch 语句完成
代码:
/*
案例:Switch01.java
请编写一个程序,该程序可以接收一个字符,比如:a,b,c,d,e,f,g
a表示星期一,b表示星期二 …
根据用户的输入显示相应的信息.要求使用 switch 语句完成
思路分析
1. 接收一个字符 , 创建Scanner对象
2. 使用switch 来完成匹配,并输出对应信息
代码
*/
Scanner myScanner = new Scanner(System.in);
System.out.println("请输入一个字符(a-g)");
char c1 = myScanner.next().charAt(0);//
//在java中,只要是有值返回,就是一个表达式
switch(c1) {
case 'a' :
System.out.println("今天星期一,猴子穿新衣");
break;
case 'b' :
System.out.println("今天星期二,猴子当小二");
break;
case 'c' :
System.out.println("今天星期三,猴子爬雪山..");
break;
//.....
default:
System.out.println("你输入的字符不正确,没有匹配的");
}
System.out.println("退出了switch ,继续执行程序");
4. switch 注意事项和细节讨论
//细节1
//表达式数据类型,应和case 后的常量类型一致,
//或者是可以自动转成可以相互比较的类型,比如输入的是字符,而常量是 int
//细节2
//switch(表达式)中表达式的返回值必须是:
//(byte,short,int,char,enum[枚举],String)
//细节3
//case子句中的值必须是常量(1,'a')或者是常量表达式,而不能是变量
//
//细节4
//default子句是可选的,当没有匹配的case时,执行default
//如果没有default 子句,有没有匹配任何常量,则没有输出
//
//细节5
//break语句用来在执行完一个case分支后使程序跳出switch语句块;
//如果没有写break,程序会顺序执行到switch结尾,除非执行到break
char c = 'b';
char c2 = 'c';
switch(c) {
case 'a' :
System.out.println("ok1");
break;
case 'b' :
System.out.println("ok2");
break;
default :
System.out.println("ok3");
}
System.out.println("退出了switch,继续执行..");