条件结构,对程序指令的执行做出选择,类似口语中的如果-那么。。。
基本语法如下:
这是“二选一”,从两个条件中选择一个。最后一行不在条件内,一定会执行。
还有就是多选一:
选择条件可以组合,主要的运算符有 &&(且),||(或者),!(非),异或(^)
多条件组合的案例
下面是一个其他运算符的案例
在多选一的条件下,注意区间的处理,比如下面的代码块
错误的区间示例,如果输入95,输出是?
修正之后的案例
区间的处理
条件也可以嵌套,顺便了解一下对于字符串的比较,不能用==,必须用equals方法
条件的嵌套
对于单纯的if else 二选一的情况,在某些情况下可以 ? :简化,这是java中唯一的三元运算符
条件表达式的用法
对于等值判断,还可以考虑使用switch,虽然用if一定可以,有时候Switch会简单一些,看下面的案例
switch表达式
最早switch表达式必须用int及以下的整数类型,现在支持String
作业:
1:计算工资计算所交个税金额:
按照规定,个税采用分段式收缴方式:
工资低于等于3500,不用交税;
高于3500,低于8000,超过3500部分,按照 %2缴纳个税;
高于8000,低于20000,超过部分按照5%缴纳;
高于20000,超过部分按照10%缴纳;
输入工资金额,输出应交个税 金额。
比如,老余薪水25000,则交税
(8000-3500)*0.02+(20000-8000)*0.05+(25000-20000)*0.1
2:
输入三个数,从小到大的方式输出三个数
3:
输入赵本山的考试成绩,显示所获奖励
成绩==100分,爸爸给他买辆车
成绩>=90分,妈妈给他买MP4
90分>成绩>=60分,妈妈给他买本参考书
成绩<60分,什么都不买
如果成绩高于100或者小于0,显示输入错误。
4:输入三角形的三个边长,判断是否能组成三角形(任意两边的和大于第三边)
5:输入张浩的数学和英语以及语文成绩,如果有一门课是满分,并且没有不及格,
则有iphone xs作为奖励,否则什么都没有。
6:双十二 家乐福购物打折, 所有购物打8折,购物满100打六折;会员一律打5折;
会员购物超过1000,打4折。
输入购物金额,是不是会员,算出实际支付的金额
7:小王这学期有三门课程,分别是 计算机组成原理,数据结构和高数。
学校规定,平均分80以上,并且没有不及格,有5000元奖学金;
超过两门不及格(含两门),留级;只有一门不及格,下学期缴费补考;其他情况
,考试通过,没有奖励。
输入小王三门课的成绩,输出最后结果