小白的java学习之路 “ 选择结构(二)”
2024-10-08 06:32:29
switch 选择结构:
为什么使用switch选择结构:
switch选择结构可以更好地解决等值判断问题。
switch选择结构的四个关键字:
switch case default break
switch选择结构语法:
switch (key) {
case value: break;
case value: break;
case value: break;
default: break;
}
根据key去匹配value的值,如果value的值跟key相同则走case块中的代码,然后执行完毕后结束,如果所有case块都不匹配则会走default
如果想让case块执行完毕后跳出选择结构则在case块结尾处添加break
案例:
/* 韩嫣参加计算机编程大赛
如果获得第一名,将参加麻省理工大学组织的1个月夏令营
如果获得第二名,将奖励惠普笔记本电脑一部
如果获得第三名,将奖励移动硬盘一个
否则,不给任何奖励 */
public class Demo01 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入名次:");
char count = input.next().charAt();
/*
*
* 韩嫣参加计算机编程大赛 如果获得第一名,将参加麻省理工大学组织的1个月夏令营 如果获得第二名,将奖励惠普笔记本电脑一部
* 如果获得第三名,将奖励移动硬盘一个 否则,不给任何奖励
*/
switch (count) {
case '一':
System.out.println("参加麻省理工大学组织的1个月夏令营 ");
break;
case '二':
System.out.println("奖励惠普笔记本电脑一部");
break;
case '三':
System.out.println("奖励移动硬盘一个");
break;
default:
System.out.println("没有奖励!");
break;
}
}
}
2.注意问题:
1.case后面的常量必须各不相同
2.如果需要每个case执行完后跳出,在每个case后不要忘记写break;
3.default块顺序可以变动,但要注意其执行顺序。通常,default块放在末尾,也可以省略
3.多重if选择结构和switch比对
相同点:
都是用来处理多分支条件的结构
不同点:
switch选择结构
只能处理等值条件判断的情况
多重if选择结构
没有switch选择结构的限制,特别适合某个变量处于某个连续区间时的情况
4.总结选择结构:
if选择结构
基本if选择结构: 处理单一或组合条件的情况
if-else选择结构:处理简单的条件分支情况
多重if选择结构:处理复杂的条件分支情况
嵌套if选择结构:用于较为复杂的流程控制
switch选择结构
多重分支并且条件判断是等值判断的情况
public class Demo02 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("欢迎光临我行我素管理系统");
System.out.println("\t\t1.登录系统");
System.out.println("\t\t2.退出");
System.out.println("请选择:"); if(input.hasNextInt())
{
int number=input.nextInt();
switch (number) {
case :
System.out.println("欢迎登录系统!!");
break;
case :
System.out.println("您退出了系统!!");
break;
default:
System.out.println("没有输入选项");
break;
} }else{
System.out.println("请输入正确的数字:");
}
}
}
最新文章
- python 新旧类的问题
- html基础 样式
- [Appium] 使用Appium过程中遇到的各种坑
- PHP IDE phpstorm 常用快捷键
- python False
- Ubuntu 14.04怎样升级到Ubuntu 14.10
- Darwin Streaming Server用vs2005编译运行过程
- Java编程最差代码
- ListBox重绘
- 【转】MFC下拉列表框的用法
- Robert Penner's Easing Functions
- JVM启动过程——JVM之一
- 使用JDBC对数据库实现批处理操作
- nodejs querystring
- JAVA提高一:静态导入、可变参数、增强型for循环、装拆箱
- AngularJS1.X学习笔记11-服务
- jenkins+supervisor实现django项目的自动部署(ubuntu)
- XSS 与 CSRF 跨站攻击
- shell的命令替换和命令组合
- 【数学建模】day08-数理统计III
热门文章
- Codeforces_828
- python之面向对象01
- Kittenblock画笔基础,移动留下痕迹的蝴蝶,图形化编程经验分享
- WampServer 更换 mysql
- abp(net core)+easyui+efcore实现仓储管理系统——入库管理之一(三十七)
- FTP - File Transfer Protocol
- How to Convert a Class File to a Java File?
- 关于开源,Git,Github
- 由lwip的mbox中netbuf传递看指针的指针
- [Linux]命令返回值以及错误对照表