案例1:根据用户输入的薪水计算个人所得税并打印出来,其中个税起征点为:5000元,具体规则如下:(超过三个分支使用if-else if-if)
应纳税所得额 | 税率 | 扣除数 |
---|---|---|
应纳税额不超过3000元(8000) | 3% | 0 |
应纳税额超过3000元至12000元(17000) | 10% | 210 |
应纳税额超过12000元至25000元(30000) | 20% | 1410 |
… | … | … |
public class IfSalaryTest {
public static void main(String[] args) {
//1. 提示用户输入个人薪水
System.out.println("请输入你的薪水:");
Scanner sc=new Scanner(System.in);
int salary=sc.nextInt();
//局部变量,作用范围在方法体中
double salaryPrice=0.0;
5000
第一阶段纳税额:工资在5000~8000 8000-5000=3000 <=3000
第二阶段纳税额:工资在8000~17000 (17000-8000)+(8000-5000)=12000 3000~12000
第三阶段纳税额:工资在17000~25000 (30000-17000)+(17000-8000)+(8000-5000)=25000 12000~25000
//2.使用if-else if-else分支结构判断薪水所在范围并计算对应的个人所得税
if(salary<=5000) {
System.out.println("无需纳税");
} else if (salary<=8000) {
//快变量:作用范围是在块语句
salaryPrice=(salary-5000)*0.03;
} else if(salary<=17000) {
salaryPrice=(salary-8000)*0.1+(8000-5000)*0.03;
} else if(salary<=30000) {
salaryPrice=(salary-17000)*0.2+(17000-8000)*0.1+(8000-5000)*0.03;
}
System.out.println("个人所得税是:"+salaryPrice);
}
}