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分, ...
随机推荐
- A. Hulk
time limit per test 1 second memory limit per test 256 megabytes input standard input output standar ...
- ccflow_005.请假流程-傻瓜表单-审核组件模式
ccflow_005.请假流程-傻瓜表单-审核组件模式 ' 用审核组件演示各个流程应用 首先设置节点,填写请假单的 表单方案.选择内置傻瓜表单.我们之前创建的表单就回来了. 可以点击下面的设计傻瓜表单 ...
- oppo手机怎么打开USB调试模式
OPPO手机USB调试的设置方法:1.ColorOS 3.0版本,进入设置--关于手机,连续点击版本号直到出现“您已处于开发者选项”,再进入设置--其他设置--开发者选项--USB调试进行设置: 2. ...
- hdoj5671 BestCoder Round #81 (div.2)
对于交换行.交换列的操作,分别记录当前状态下每一行.每一列是原始数组的哪一行.哪一列即可. 对每一行.每一列加一个数的操作,也可以两个数组分别记录.注意当交换行.列的同时,也要交换增量数组. 输出时通 ...
- DataGridTemplateColumn 如何获取内部控件
WPF中有时候我们不使用DataGridTextColumn 而使用用途更加宽广的DataGridTemplateColumn 但是用途多的东西当然也更复杂. 这里说下如何取DataGridTempa ...
- 洛谷 P2296 寻找道路【bfs+spfa】
反向建边bfs出不能到t的点,然后对每个能到这些点的点打上del标记,然后spfa的时候不经过这些点即可 #include<iostream> #include<cstdio> ...
- 关于C_Cpp的一些小结
## 某些函数的使用 1. printf / sprintf / fprintf printf:把格式字符串输出到标准输出(可重定向) sprintf:把格式字符串输出到指定字符串中,参数比print ...
- AtCoder Regular Contest 076 E - Connected?
题目传送门:https://arc076.contest.atcoder.jp/tasks/arc076_c 题目大意: 给定一个\(R×C\)的矩阵,然后给定\(N\)对点,每对点坐标为\((X_{ ...
- java中常用到的math方法(Math.PI、Math.random()、Math.abs(double)、Math.floor(double)、Math.ceil(double)、Math.round(double))
public class MathDemo { public static void main(String args[]){ /** * abs求绝对值 */ System.out.println( ...
- windows密码长度最小值改不了
控制台输入gpedit.msc或者在“开始→控制面板→管理工具→本地安全策略→账户策略→密码策略→密码长度最小值”中修改不了,是灰色的,不让修改 用命令行可以修改开始-->运行-->输入& ...