从计算一个税收情况来了解switch
- switch语句的Java用途
- (if...else)设计收税比例
- (switch语句)推算工资范围
- switch的生活应用
switch语句的Java用途
与if…else类似,switch可以实现多重选择。不过,switch语句以我个人观点,它与if…else语句是实现了互逆选择。
switch适用于个别数据已知,求数据对应的另外的意义。(有些像函数的一一对应关系)
Java代码格式如下
packageyfw0618;publicclassblog2{staticvoidmain(){switch(要判断的参数){case值1:语句1;break;case值2:语句2;break;case值3:语句3break;dafault:语句4break;}}}这里写的还是太笼统了些,下面,让我们走进生活的税收实例,理解一下if…else与switch功用
(if…else)设计收税比例
我们用2018年的个税来设计程序
条件
| 征收级距(与5000作差) | 税率 % |
|---|---|
| <=3000 | 3 |
| 3000~12000 | 10 |
| 12000~25000 | 20 |
| 25000~35000 | 25 |
| 35000~55000 | 30 |
| 55000~80000 | 35 |
| >=80000 | 45 |
那么,我们若需要计算个人工资应纳税额,if…else是再合适不过的
代码演示如下:
packageyfw0618;//商品打折50元以上有8折优惠publicclassblog2{staticvoidmain(){intsalary=80000;if(salary<=5000){System.out.println("您的工资税后为"+salary);}elseif((salary-5000)<=3000){System.out.println("您的工资税后为"+(salary-(salary-5000)*0.03));}elseif((salary-5000)<=12000){System.out.println("您的工资税后为"+(salary-(salary-5000)*0.1));}elseif((salary-5000)<=25000){System.out.println("您的工资税后为"+(salary-(salary-5000)*0.2));}elseif((salary-5000)<=35000){System.out.println("您的工资税后为"+(salary-(salary-5000)*0.25));}elseif((salary-5000)<=55000){System.out.println("您的工资税后为"+(salary-(salary-5000)*0.3));}elseif((salary-5000)<=80000){System.out.println("您的工资税后为"+(salary-(salary-5000)*0.35));}else{System.out.println("您的工资税后为"+(salary-(salary-5000)*0.45));}}}既然我们可以用工资来算税后工资,那么,如果我们知道工资扣的税收档,switch语句便可以给出我们工资的范围。
(switch语句)推算工资范围
比如说,我们知道了工资扣了3%的稅,根据图表,可知工资在5000~8000元。由此,我们可以设计如下程序:
packageyfw0618;publicclassblog2{staticvoidmain(){inttax_percent=3;switch(tax_percent){case0:System.out.println("您的工资在0~5000元");break;case3:System.out.println("您的工资在5000~8000元");break;case10:System.out.println("您的工资在8000~20000元");break;case20:System.out.println("您的工资在20000~33000元");break;case25:System.out.println("您的工资在33000~43000元");break;case30:System.out.println("您的工资在43000~63000元");break;case35:System.out.println("您的工资在63000~88000元");break;case45:System.out.println("您的工资在88000以上");break;default:System.out.println("请重新输入正确税率");break;}}}结果如下
输入值为3时
您的工资在5000~8000元输入值为32时
请重新输入正确税率switch的生活应用
1.可用于判断订单支付状态:待支付,已付款,已发货,已完成,售后中,已取消
2.可用于不同角色开放不同菜单,普通会员,会员,管理员,超级管理员
3.接口请求类型区分
4.计算机程序根据运算符执行加减乘除的取模
5.游戏指令的解析:1键为攻击,2键为防御,3键为回血,4键为逃跑
总的来说,分支结构if…else与switch的功能全面,更多可能还待我们共同开发。