JavaSE-03 Java选择结构
学习要点
- if选择结构
- switch选择结构
if选择结构
单分支if选择结构
语法结构
应用场合
问题:如果王小强的Java考试成绩大于98分,小强就能获得一个iphone8作为奖励。
复杂条件下的if选择结构
问题:小强Java成绩大于98分,而且音乐成绩大于80分,老师奖励他;或者Java成绩等于100分,音乐成绩大于70分,老师也可以奖励他。
逻辑运算符
运算符 |
表达式 |
说明 |
&& |
条件1 && 条件2 |
仅仅两个条件同时为真,结果为真 |
|| |
条件1 || 条件2 |
只要两个条件有一个为真,结果为真 |
! |
! 条件 |
条件为真时,结果为假 条件为假时,结果为真 |
解决方案:
需要注意:逻辑运算符的短路问题和优先级问题。例如“||”符号前一个条件成立的话就不会计算后一个条件。
双分支if选择结构
语法结构
流程图
如何绘制流程图
圆角矩形:程序的开始和结束
矩形:执行
菱形:判断
梯形:输入输出
箭头:程序流程
上机练习
需求描述:如果体彩中了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选择结构
多分支选择结构语法分析
上机练习
需求描述:我想买车,买什么车决定于我在银行有多少存款
如果我的存款超过500万,我就买法拉利
否则,如果我的存款超过100万,我就买宝马
否则, 如果我的存款超过50万,我就买奔驰
否则, 如果我的存款超过10万,我就买大众
否则, 如果我的存款10万以下 ,我买捷安特
要求:代码实现。
注意:多分支选择结构条件顺序问题。
嵌套if选择结构
问题:学校举行运动会,百米赛跑跑入10秒内的学生有资格进决赛,根据性别分别进入男子组和女子组。
解决方案:
判断是否能够进入决赛
在确定进入决赛的情况下,判断是进入男子组,还是进入女子组
使用嵌套if选择结构
嵌套if选择结构语法分析
上机练习:请写出这一问题的代码实现
switch选择结构
问题:王小强参加计算机编程大赛
如果获得第一名,将参加麻省理工大学组织的1个月夏令营
如果获得第二名,将奖励惠普笔记本电脑一部
如果获得第三名,将奖励移动硬盘一个
否则,不给任何奖励
解决方案:
使用多重if选择结构实现:缺点——结构复杂,啰嗦
使用switch选择结构解决:条件——等值判断
switch选择结构语法分析
注意:break的用法。
例如:1,3,5吃快餐,2,4,6,7吃大餐,如何实现?
上机练习:实现学生信息管理系统菜单的实现
多重if选择结构和switch选择结构的区别
选择结构 |
相同点 |
不同点 |
switch选择结构 |
都是用来处理多分支条件的结构 |
只能处理等值条件判断的情况,而且条件必须是整型变量、字符型变量或者字符串 |
多重if选择结构 |
没有switch选择结构的限制,特别适合某个变量处于某个连续区间时的情况 |
JavaSE-03 Java选择结构的更多相关文章
- Java选择结构和数组
Java选择结构和数组 一.Switch语句 二.if和switch区别 推荐使用if 三.函数 Java中的函数和方法是同一个词 四.数组 4.1.数组常见错误 五.内存机制 六.转换成十六进制 移 ...
- java 选择结构if
图1-1 if…else if…else语句的流程图 选择结构if语句与三元运算转换 三元运算符,它和if-else语句类似,语法如下: 判断条件 ? 表达式1 : 表达式2 三元运算符会得 ...
- java选择结构
/**选择结构*/ public class Demo06{ public static void main(String []args){ // if...else...型 String name ...
- Java选择结构和循环结构
1.选择结构 ①.ifif(){ } if(){}else{} if(){}else if(){}else if(){}else{} ②.switch switch (表达式) { case 常量 1 ...
- Java选择结构、循环结构
1:switch语句(掌握) (1)格式: switch(表达式) { case 值1: 语句体1; break; case 值2: 语句体2; break; ... default: 语句体n+1; ...
- 036 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 03 嵌套if结构
036 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 03 嵌套if结构 本文知识点:Java中的嵌套if结构 什么是嵌套if结构? 概念: 嵌套if结构 ...
- Java流程控制03——选择结构
选择结构 if单语句结构 我们很多时候要去判断一个东西是否可行,然后我们才去执行,这样一个过程我们用if语句来表示 语法 if(布尔表达式){ //如果布尔表达式结果为true将执行的语句 } if ...
- java基础05 选择结构
选择结构 public class Demo01Change { public static void main(String[] args) { /** * 实现等量的转换 */ int a = 5 ...
- Java 第三章 选择结构1
选择结构(一) 会使用基本的 if 选择结构 掌握逻辑运算符,掌握多重 if 选择结构 , 掌握嵌套 if 选择 结构 为什么需要 if 选择结构 例如: 如果张浩的 java 考试成绩大于 98分, ...
随机推荐
- POJ 1737 经典DP
问题:求含有n个点的连通图的个数. 解: 考虑DP,$f(n)$表示n个点,每个点都和点1相连,且n个点互相连通的图的个数. (蓝字非常重要,这个条件有效地避免了重复计算) $g(n)$表示n个点,每 ...
- CodeForces 615C
题意: 给定两个字符串s1,s2利用s1去构造s2,s1有无限个,可以翻转,你最少要用几个s1才能构造s2.输出每一次使用的s1的有效区间. 伪思路: 据说是暴力就能过的题目.然而自己就是暴力差,模拟 ...
- spark 机器学习 朴素贝叶斯 原理(一)
朴素贝叶斯算法仍然是流行的挖掘算法之一,该算法是有监督的学习算法,解决的是分类问题,如客户是否流失.是否值得投资.信用等级评定等多分类问题.该算法的优点在于简单易懂.学习效率高.在某些领域的分类问题中 ...
- 《对“XXX::Invoke”类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃、损坏和数据丢失。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用它们》的问题的解决方法
<对“XXX::Invoke”类型的已垃圾回收委托进行了回调.这可能会导致应用程序崩溃.损坏和数据丢失.向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用它们& ...
- Hadoop Hive概念学习系列之HDFS、Hive、MySQL、Sqoop之间的数据导入导出(强烈建议去看)
Hive总结(七)Hive四种数据导入方式 (强烈建议去看) Hive几种数据导出方式 https://www.iteblog.com/archives/955 (强烈建议去看) 把MySQL里的数据 ...
- 最短路之Dijkstra(迪杰斯特拉)
一般用法: Dijkstra(迪杰斯特拉)算法是典型的单源最短路径算法,用于计算一个节点到其他所有节点的最短路径.主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止.Dijkstra算法是很有代 ...
- memcache操作
1 格式(telnet) <command name> <key> <flags> <exptime> <bytes> a) <com ...
- docker监控系统
第一:docker监控系统之命令行式监控 第二:docker监控系统之cadvisor 第三:docker监控系统之 第四:docker监控系统之
- 转-sql之left join、right join、inner join的区别
left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只 ...
- C. Memory and De-Evolution 逆向思维
http://codeforces.com/contest/712/problem/C 要使得把三角形由边长n变成m,等价于由m变成n 如果是从n变成m,则很难判断每次判断变成多少.比如22的变成4, ...