JAVA的选择结构(二)
1.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(0);
/*
*
* 韩嫣参加计算机编程大赛 如果获得第一名,将参加麻省理工大学组织的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选择结构
多重分支并且条件判断是等值判断的情况
5.使用hasNextInt()解决用户从控制台输入为非整型问题
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 1:
System.out.println("欢迎登录系统!!");
break;
case 2:
System.out.println("您退出了系统!!");
break;
default:
System.out.println("没有输入选项");
break;
}
}else{
System.out.println("请输入正确的数字:");
}
}
}
案例:1.韩嫣参加计算机编程大赛
如果获得第一名,将参加麻省理工大学组织的1个月夏令营
如果获得第二名,将奖励惠普笔记本电脑一部
如果获得第三名,将奖励移动硬盘一个
否则,不给任何奖励
public class Demo01 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入名次:");
char count = input.next().charAt(0);
/*
*
* 韩嫣参加计算机编程大赛 如果获得第一名,将参加麻省理工大学组织的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. 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 1:
System.out.println("欢迎登录系统!!");
break;
case 2:
System.out.println("您退出了系统!!");
break;
default:
System.out.println("没有输入选项");
break;
}
}else{
System.out.println("请输入正确的数字:");
}
}
}
JAVA的选择结构(二)的更多相关文章
- JAVA的选择结构
1.基本选择结构if 案例:如果Java考试成绩大于98分则奖励MP4 public class Demo02 { public static void main ...
- java基础 ----- 选择结构
--------- 流程控制 ------ 流程图 ------ 基本的 if 选择结构 import java.util.Scanner; public class GetPr ...
- java4选择结构 二
public class jh_01_为什么使用switch选择结构 { /* * 韩嫣参加计算机编程大赛 * 如果获得第一名,将参加麻省理工大学组织的1个月夏令营 * 如果获得第二名,将奖励惠普笔记 ...
- 选择结构二switch选择结构
在上一章节我们讲解了if选择结构 本章我们学习 switch选择结构 还要知道if选择结构和switch结构的区别 为什么学习了if选择结构还要学习switch选择结构 以及 两种选择结构的运用 ...
- Java流程控制:选择结构
一.选择结构 选择结构用于判断给定的条件,根据判断的结果来控制程序的流程. Java中选择结构的语法主要分为'if...else'语句和'switch...case'语句. Java中选择结构语句在语 ...
- C语言程序设计第四次作业-选择结构
(一)改错题 输出三角形的面积和周长,输入三角形的三条边a.b.c,如果能构成一个三角形,输出面积area和周长perimeter(保留2位小数):否则,输出"These sides do ...
- Java中的选择结构(二)
选择结构(二) 学习本章会用到的单词: case:实例,情形,情况 switch:转换,切换,开关 default:系统默认值,违约,预设.缺省 exit:出口,通道,退出 consume:消耗,耗费 ...
- 小白的java学习之路 “ 选择结构(二)”
switch 选择结构: 为什么使用switch选择结构: switch选择结构可以更好地解决等值判断问题. switch选择结构的四个关键字: switch case default ...
- Java语法基础(三)----选择结构的if语句、switch语句
[前言] 流程控制语句: 在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的.也就是说程序的流程对运行结果有直接的影响.所以,我们必须清楚每条语句的执行流程.而且,很多时候我们要通过 ...
随机推荐
- Word 查找替换高级玩法系列之 -- 通配符大全A篇
1. 通配符大全一览 序号 特殊字符(不使用通配符) 代码(不使用通配符) 特殊字符(使用通配符) 代码(使用通配符) 1 任意单个字符 ^? 任意单个字符 ? 2 任意数字 ^### 任意数字(单个 ...
- CTeX 更改字体(软件)
CTeX默认显示字体太小了,写起来看着费眼睛.有没有办法更改字体呢? 更改字体方法:(图片是默认字体) 未完 ...... 点击访问原文(进入后根据右侧标签,快速定位到本文) </b
- 迅雷下载敏感资源 迅雷应版权方要求无法下载 μTorrent使用方法(六种方法,值得你看)(22)
1. 解决方案1 1.1 声明 此方法只适用于迅雷极速版,迅雷X不管用. 修改后下载有些磁力链接或种子,依然无反应.不是说该方法无效,而是有些种子资源不佳,很难下载,需要等半天才能连接上开始下载.如果 ...
- html使用网络图片防盗问题解决
解决mkdocs图片防盗问题 前言 我在mkdocs上的图片是使用博客园上的,部署后无法正常显示.度娘了一下,只用在<head>后插入<meta name="referre ...
- PB自动换行
1.在DataWindow Painter中打开DataWindow; 2.在需设定自动折行的列上单击, 查看右侧的属性窗口: 3.点击Position标签, 选中Autosize Height 多选 ...
- Spring中bean的管理
Spring 中常见的容器 我们知道spring容器就是spring中bean的驻留场所.spring容器并不是只有一个.spring自带了多个容器实现,可以归为两种不同的类型:bean工厂和应用上下 ...
- PMBOK项目管理的五大过程组和十大知识领域
PMBOK五大过程组是:启动过程.规划过程.执行过程.监控过程.收尾过程. 各用一句话概括项目管理知识体系五大过程组: 1.启动过程组:作用是设定项目目标,让项目团队有事可做: 2.规划过程组:作用是 ...
- C#在DataTable中使用LINQ
LINQ 查询适用于实现的数据源 IEnumerable<T>接口或System.Query.IQueryable接口. DataTable类默认是没有实现以上接口的. 所以要在DataT ...
- vue组件上动态添加和删除属性
1.vue组件上动态添加和删除属性 // 添加 this.$set(this.obj, 'propName', val) // 删除 this.$delete(this.obj, 'propName' ...
- webstrom设置语句中的分号
webstrom可以设置语句默认是否添加分号 setting >editor > Code Style > Javascript