9. 流程控制语句(二)
【摘要】 Java系列第九课
1、switch语句
switch语句用于等值判断。当表达式与某一个case值完全匹配的时候,就会执行该case语句下面的代码,直到遇到break语句结束。
Ⅰ 语法结构如下:
上述switch中的表达式,支持以下几种类型:
Ⅱ switch语句需要注意的地方
- 1)switch语句只有碰到break才会结束。否则会从上到下一直找break,直到找到了,才会结束。当switch流程控制语句中没有break,代码一直执行到switch最后也会结束。所以,每一个case后,不要忘记写break语句了。
- 2)switch中的case标签不能重复。
- 3)表达式类型 与 值类型 必须一致。(很重要)
- 4)case标签可以有多个,default标签可以省略。
- 5)支持标签堆叠。
Ⅲ 练习题1
if语句代码如下:
import java.util.Scanner;
public class Demo8 {
public static void main(String[] args) {
Scanner superman = new Scanner(System.in);
int num;
System.out.println("请输入号码");
num = superman.nextInt();
if (num == 0){
System.out.println("师傅的号");
}else if (num == 1){
System.out.println("蓉蓉的号");
}else if (num == 2){
System.out.println("黄老邪的号");
}else if (num == 3){
System.out.println("周伯通的号");
}else{
System.out.println("你输入的号码不正确,请输入0-3中任何一个号码");
}
}
}
switch语句代码如下:
import java.util.Scanner;
public class Demo8 {
public static void main(String[] args) {
Scanner superman = new Scanner(System.in);
int num;
System.out.println("请输入号码");
num = superman.nextInt();
switch (num){
case 0:
System.out.println("师傅的号码");
break; // 结束switch
case 1:
System.out.println("蓉蓉的号码");
break;
case 2:
System.out.println("黄老邪的号码");
break;
case 3:
System.out.println("周伯通的号码");
break;
default:
System.out.println("您输入的有误,请输入0-3中的任何一个数");
break;
}
}
}
Ⅳ 练习题2
具体月份对应的季节如下:
操作如下:
import java.util.Scanner;
public class Demo1{
public static void main(String[] args){
Scanner superman = new Scanner(System.in);
int a;
System.out.println("你想输入的月份:");
a = superman.nextInt();
if (a>=3 && a<6){
System.out.println("春季");
}else if (a>=6 && a<9){
System.out.println("夏季");
}else if (a>=9 && a<12){
System.out.println("秋季");
}else{
System.out.println("冬季");
}
}
}
Ⅴ 练习题3
操作如下:
import java.util.Scanner;
public class Demo1{
public static void main(String[] args){
System.out.println("购物管理系统1.0版");
System.out.println("1.登录系统");
System.out.println("2.退出");
System.out.println("********************************");
Scanner superman = new Scanner(System.in);
int a;
System.out.println("请选择输入数字:");
a = superman.nextInt();
if (a == 1){
System.out.println("欢迎来到:购物管理系统1.0版");
System.out.println("********************************");
System.out.println("1.客户信息管理");
System.out.println("2.购物结算");
System.out.println("3.真情回馈");
System.out.println("4.注销");
}else{
System.out.println("退出登录");
}
}
}
2、多重if 和 switch 的区别
- 1)switch只能进行等值的条件判断;多重if,任何判断都可以(多用于区间判断)
- 2)等值判断,switch效率高。
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)