关于郑州个人所得税的计算器java编写两种方法
2017-07-13 20:13
253 查看
目前全国各地的个人所得税不一样我们就拿郑州的个人所得税作为一个例子进行描写。
郑州个人所得税计算公式
应纳税所得额 = 税前工资收入金额 - 五险一金(个人缴纳部分) - 起征点(3500元)
应纳税额 = 应纳税所得额 x 税率 - 速算扣除数
提示:自2011年开始至今,内地人员个税起征点为3500元,外籍人士(包括港、澳、台),个税起征点应设为4800元。
郑州个人所得税税率表
工资、薪金所得,适用七级超额累进税率,税率为百分之三(3%)至百分之四十五(45%)。
以上就是郑州的个人所得税的表格,起征税是3500 我们先用常规方法计算一下:
import java.util.*;
public class Suo
{
public static void main(String[]args){
System.out.println("请输入你的工资:");
Scanner sc=new Scanner(System.in);
double a=sc.nextDouble();
if(a<3500){
System.out.println("您所需要缴纳的税是0元");
}else if(a<5000){
System.out.println("您所需要缴纳的税是"+(a-3500)*3/100);
}else if(a<8000){
System.out.println("您所需要缴纳的税是"+(1500*3/100+(a-5000)*0.1));
}else if(a<12500){
System.out.println("您所需要缴纳的税是"+(45+300+(a-8000)*0.2));
}else if(a<38500){
System.out.println("您所需要缴纳的税是"+(45+300+900+(a-12500)*0.25));
}else if(a<58500){
System.out.println("您所需要缴纳的税是"+(1245+4500+(a-38500)*0.3));
}else if(a<83500){
System.out.println("您所需要缴纳的税是"+(11745+(a-58500)*0.35));
}else{
System.out.println("您所需要缴纳的税是"+(11745+25000*0.35+(a-83500)*0.45));
}
}
}
不难看出,这个表达式是非常繁琐的,但是也是最原始的计算公式,现在银行给出了另一种算法,细心的朋友会发现表格最后面有一个速算扣除数,现在我们可以用这个进行更简单的计算:
这里我们不将值一行一行输出,我们在最后打印一个i的值。
import java.util.*;
public class Suo
{
public static void main(String[]args){
System.out.println("请输入工资:");
Scanner sc=new Scanner(System.in);
double money =sc.nextDouble();
double a=money-3500;
double i=0;
if (a<=0){
i=0;
}else if (a<=1500){
i=a*0.03-0;
}else if(a<=4500){
i=a*0.1-105;
}else if(a<=9000){
i=a*0.2-555;
}else if(a<=35000){
i=a*0.25-1005;
}else if(a<=55000){
i=a*0.3-2755;
}else if(a<=85000){
i=a*0.35-5505;
}else{
i=a*0.45-13505;
}
System.out.println(i);
}
}
郑州个人所得税计算公式
应纳税所得额 = 税前工资收入金额 - 五险一金(个人缴纳部分) - 起征点(3500元)
应纳税额 = 应纳税所得额 x 税率 - 速算扣除数
提示:自2011年开始至今,内地人员个税起征点为3500元,外籍人士(包括港、澳、台),个税起征点应设为4800元。
郑州个人所得税税率表
工资、薪金所得,适用七级超额累进税率,税率为百分之三(3%)至百分之四十五(45%)。
以上就是郑州的个人所得税的表格,起征税是3500 我们先用常规方法计算一下:
import java.util.*;
public class Suo
{
public static void main(String[]args){
System.out.println("请输入你的工资:");
Scanner sc=new Scanner(System.in);
double a=sc.nextDouble();
if(a<3500){
System.out.println("您所需要缴纳的税是0元");
}else if(a<5000){
System.out.println("您所需要缴纳的税是"+(a-3500)*3/100);
}else if(a<8000){
System.out.println("您所需要缴纳的税是"+(1500*3/100+(a-5000)*0.1));
}else if(a<12500){
System.out.println("您所需要缴纳的税是"+(45+300+(a-8000)*0.2));
}else if(a<38500){
System.out.println("您所需要缴纳的税是"+(45+300+900+(a-12500)*0.25));
}else if(a<58500){
System.out.println("您所需要缴纳的税是"+(1245+4500+(a-38500)*0.3));
}else if(a<83500){
System.out.println("您所需要缴纳的税是"+(11745+(a-58500)*0.35));
}else{
System.out.println("您所需要缴纳的税是"+(11745+25000*0.35+(a-83500)*0.45));
}
}
}
不难看出,这个表达式是非常繁琐的,但是也是最原始的计算公式,现在银行给出了另一种算法,细心的朋友会发现表格最后面有一个速算扣除数,现在我们可以用这个进行更简单的计算:
这里我们不将值一行一行输出,我们在最后打印一个i的值。
import java.util.*;
public class Suo
{
public static void main(String[]args){
System.out.println("请输入工资:");
Scanner sc=new Scanner(System.in);
double money =sc.nextDouble();
double a=money-3500;
double i=0;
if (a<=0){
i=0;
}else if (a<=1500){
i=a*0.03-0;
}else if(a<=4500){
i=a*0.1-105;
}else if(a<=9000){
i=a*0.2-555;
}else if(a<=35000){
i=a*0.25-1005;
}else if(a<=55000){
i=a*0.3-2755;
}else if(a<=85000){
i=a*0.35-5505;
}else{
i=a*0.45-13505;
}
System.out.println(i);
}
}
相关文章推荐
- 关于Java两种同步方法的理解(代码块级同步对象设置)
- 关于Java两种同步方法的理解(代码块级同步对象设置)
- 黑马程序员--Java基础加强--14.利用反射操作泛型III【解析关于泛型类型的细节信息的获取方法】【Method与泛型相关的方法】【个人总结】
- JAVA实现XML与JSON互相转换方法(含源码) / xml转json的两种方法(个人实现的)
- 【练习题】构造方法 编写Java程序,模拟简单的计算器。
- 关于Java方法参数的个人补充
- java中关于给属性赋值的两种方法
- Java实用程序--计算器的两种设计方法
- 关于属性和调方法这块 软件的两种语言:Java和C#
- 编写Java程序,模拟简单的计算器。 定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有。 编写构造方法,用于初始化n1和n2,再为该类定义 加(addition)、 减(su
- 关于java基础类型与引用类型内存存储问题,以及string.intern()方法(String两种创建方式的区别)
- 关于java中方法或者函数,形参,实参的个人理解
- 关于Java导入excel表格出现下标越界异常的解决方法(个人心得记录)
- 关于Java编写多行注释遇到方法字符串中正好也有注释符号产生冲突的解决办法
- Java编写计算器的常见方法实例总结
- 每日20行之4~~~两种方法java实现简易计算器 附带复杂计算器代码(优先级顺序)
- 关于Java:一个使用多个参数编写方法的技巧
- 关于使用gVim编写Java源文件时产生乱码的解决方法
- JAVA反射中的getFields()方法和getDeclaredFields ()方法的区别 关于获取类的字段有两种方式:getFields()和getDeclaredFields()
- 关于个人所得税的计算方法及税率