Java 代码实现个人所得税计算 - 2021 年新税法
Java 代码实现个人所得税计算 - 2021 年新税法
自 2021 年元月起,我国执行新的个人所得税征收办法,按纳税年度合并计算个人所得税。本文将使用 Java 代码实现个税计算,并提供详细代码和示例说明。
税法规定:
- 全年收入不超过 6 万元,应缴税率 0%;
- 超过 6 万元的部分,按超额累进税率计算,具体如下:
- 不超过 36000 元的部分,应缴税率 3%;
- 超过 36000 元至 144000 元的部分,应缴税率 10%;
- 超过 144000 元至 300000 元的部分,应缴税率 20%;
- 超过 300000 元至 420000 元的部分,应缴税率 25%;
- 超过 420000 元至 660000 元的部分,应缴税率 30%;
- 超过 660000 元至 960000 元的部分,应缴税率 35%;
- 超过 960000 元的部分,应缴税率 45%。
示例:
- 年收入 50000 元,应缴税款 0 元;
- 年收入 96000 元,应缴税款 1080 元;
- 年收入 120000 元,应缴税款 3480 元;
- 年收入 240000 元,应缴税款 19080 元;
- 年收入 360000 元,应缴税款 43080 元;
- 年收入 480000 元,应缴税款 73080 元;
- 年收入 1200000 元,应缴税款 331080 元。
代码实现:
import java.util.Scanner;
public class IncomeTaxCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入全年收入:");
int income = scanner.nextInt();
int tax = calculateTax(income);
System.out.println("应缴税款:" + tax);
}
public static int calculateTax(int income) {
if (income <= 60000) {
return 0;
}
int taxableIncome = income - 60000;
int tax = 0;
int[] thresholds = {36000, 144000, 300000, 420000, 660000, 960000};
double[] rates = {0.03, 0.1, 0.2, 0.25, 0.3, 0.35, 0.45};
for (int i = 0; i < thresholds.length; i++) {
if (taxableIncome <= thresholds[i]) {
tax += (int) (taxableIncome * rates[i]);
break;
} else {
tax += (int) ((thresholds[i] - thresholds[i - 1]) * rates[i]);
taxableIncome -= (thresholds[i] - thresholds[i - 1]);
}
}
if (taxableIncome > 0) {
tax += (int) (taxableIncome * rates[rates.length - 1]);
}
return tax;
}
}
代码说明:
- 首先定义一个数组
thresholds存储各个税率的起征点,以及一个数组rates存储各个税率。 - 然后根据输入的年收入,判断是否超过 6 万元,如果超过,则计算应纳税额,否则输出 0。
- 使用循环遍历
thresholds数组,并根据当前应纳税额判断其落在哪个税率区间内。 - 计算对应区间的税额,并累计到
tax变量中。 - 最后将计算结果输出。
使用说明:
- 运行程序,输入全年收入,程序将输出相应的应缴税款。
- 程序代码简单易懂,可以根据实际情况进行调整和扩展。
注意:
- 代码中的
calculateTax方法返回的是int类型,因此会舍去小数部分,与实际缴税额可能存在微小差异。 - 此代码仅供参考,请以最新税法为准。
原文地址: https://www.cveoy.top/t/topic/jqa8 著作权归作者所有。请勿转载和采集!