JavaSE-03 Java选择结构

学习要点

  • if选择结构
  • switch选择结构

if选择结构

单分支if选择结构

语法结构

JavaSE-03  Java选择结构

应用场合

问题:如果王小强的Java考试成绩大于98分,小强就能获得一个iphone8作为奖励。

JavaSE-03  Java选择结构

复杂条件下的if选择结构

问题:小强Java成绩大于98分,而且音乐成绩大于80分,老师奖励他;或者Java成绩等于100分,音乐成绩大于70分,老师也可以奖励他。

逻辑运算符

运算符

表达式

说明

&&

条件1 && 条件2

仅仅两个条件同时为真,结果为真

||

条件1 || 条件2

只要两个条件有一个为真,结果为真

!

! 条件

条件为真时,结果为假

条件为假时,结果为真

解决方案:

JavaSE-03  Java选择结构

需要注意:逻辑运算符的短路问题和优先级问题。例如“||”符号前一个条件成立的话就不会计算后一个条件。

双分支if选择结构

语法结构

 JavaSE-03  Java选择结构

流程图

 JavaSE-03  Java选择结构

如何绘制流程图

JavaSE-03  Java选择结构

圆角矩形:程序的开始和结束

矩形:执行

菱形:判断

梯形:输入输出

箭头:程序流程

上机练习

需求描述:如果体彩中了500万,我买车、资助希望工程、去欧洲旅游;如果没中,我买下一期体彩,继续烧高香。

实现:1、画出流程图;2、代码实现。

上机练习

需求描述:从键盘输入4位数字学号。四位数字平均数取整数,结果等于产生的随机数字即为幸运会员。

实现:1、画出流程图;2、代码实现。

提示:1、使用if-else选择结构,输出中奖或者感谢支持信息;2、0-9随机数生成方法:int random=(int)(Math.random()*10);

多分支if选择结构

问题:学员成绩评测

成绩>=80 :良好

成绩>=60 :中等

成绩<60   :差

 解决方案

  • 将成绩分成几个连续区间判断
  • 单个if选择结构无法完成
  • 多个if选择结构很麻烦
  • 使用多重if选择结构

JavaSE-03  Java选择结构

多分支选择结构语法分析

JavaSE-03  Java选择结构

上机练习

需求描述:我想买车,买什么车决定于我在银行有多少存款

如果我的存款超过500万,我就买法拉利

否则,如果我的存款超过100万,我就买宝马

否则, 如果我的存款超过50万,我就买奔驰

否则, 如果我的存款超过10万,我就买大众

否则, 如果我的存款10万以下 ,我买捷安特

要求:代码实现。

注意:多分支选择结构条件顺序问题。

嵌套if选择结构

问题:学校举行运动会,百米赛跑跑入10秒内的学生有资格进决赛,根据性别分别进入男子组和女子组。

解决方案:

判断是否能够进入决赛

在确定进入决赛的情况下,判断是进入男子组,还是进入女子组

使用嵌套if选择结构

嵌套if选择结构语法分析

JavaSE-03  Java选择结构

上机练习:请写出这一问题的代码实现

switch选择结构

问题:王小强参加计算机编程大赛

如果获得第一名,将参加麻省理工大学组织的1个月夏令营

如果获得第二名,将奖励惠普笔记本电脑一部

如果获得第三名,将奖励移动硬盘一个

否则,不给任何奖励

解决方案:

使用多重if选择结构实现:缺点——结构复杂,啰嗦

使用switch选择结构解决:条件——等值判断

switch选择结构语法分析

JavaSE-03  Java选择结构

注意:break的用法。

例如:1,3,5吃快餐,2,4,6,7吃大餐,如何实现?

上机练习:实现学生信息管理系统菜单的实现

多重if选择结构和switch选择结构的区别

选择结构

相同点

不同点

switch选择结构

都是用来处理多分支条件的结构

只能处理等值条件判断的情况,而且条件必须是整型变量、字符型变量或者字符串

多重if选择结构

没有switch选择结构的限制,特别适合某个变量处于某个连续区间时的情况

上一篇:Java选择结构和数组


下一篇:java 选择结构if