/**
* 个税计算器
* 1.通过键盘输入用户的月薪
* 2.百度搜素个税计算方法,计算出应缴纳的税款
* 3.直到键盘输入88,则退出程序(使用break语句退出循环)
* 应纳税所得额=工资收入金额-起征点(5000)
* 应纳税额=应纳税所得额*税率-速算扣除数
个人所得税税率表一(综合所得适用)
级数
全年应纳税所得额
税率(%)
速算扣除数
1
不超过36000元的
3
0
2
超过36000元至144000元的部分
10
2520
3
超过144000元至300000元的部分
20
16920
4
超过300000元至420000元的部分
25
31920
5
超过420000元至660000元的部分
30
52920
6
超过660000元至960000元的部分
35
85920
7
超过960000元的部分
45
181920

*/
import java.util.Scanner;//导入
public class single_salary {
public static void main(String[] args){
Scanner s=new Scanner(System.in);
System.out.println("******个税计算器******");
while(true){
System.out.println("请输入用户的月薪:");
double month_salary=s.nextDouble();
if(month_salary<5000){
System.out.println("免税收。");
}else{
System.out.println("请输入一年几个月的薪资:");
int months=s.nextInt();
double year_salary=month_salary*months;
System.out.println("年薪是:"+year_salary);
double tax_income=year_salary-5000*12;//一年应纳税所得额
double tax=0;//一年应纳税额初始化为0
if(year_salary<=36000){
tax=year_salary*0.03-0;
year_salary=year_salary-tax;
} else if (year_salary<=144000) {
tax=year_salary*0.10-2520;
year_salary=year_salary-tax;
} else if (year_salary<=300000) {
tax=year_salary*0.20-16920;
year_salary=year_salary-tax;
}else if(year_salary<=420000){
tax=year_salary*0.25-31920;
year_salary=year_salary-tax;
} else if (year_salary<=660000) {
tax=year_salary*0.30-52920;
year_salary=year_salary-tax;
} else if (year_salary<=960000) {
tax=year_salary*0.35-85920;
year_salary=year_salary-tax;
} else{
tax=year_salary*0.45-181920;
year_salary=year_salary-tax;
}
System.out.println("一年应纳税所得额:"+tax_income+"元\t"+"一年应纳税额:"+tax+"元\t"+"一年实发工资:"+year_salary+"元\t");
System.out.println("输入88,退出程序;输入66,继续循环");
int cmd=s.nextInt();
if(cmd==88){
System.out.println("程序结束,退出程序。");
break;
} else if (cmd==66) {
System.out.println("继续进行程序。");
continue;
}
}
}
}
}

Java实现简单个人所得税计算器相关操作代码的更多相关文章

  1. 乐字节Java反射之四:反射相关操作

    大家好,乐字节小乐继续为Java初学者讲述Java基础知识.上次说到乐字节Java反射之三:方法.数组.类加载器,这次是Java反射之四:反射相关操作 1.操作属性 //1.获取Class对象 Cla ...

  2. 《手把手教你》系列技巧篇(三十一)-java+ selenium自动化测试- Actions的相关操作-番外篇(详解教程)

    1.简介 上一篇中,宏哥说的宏哥在最后提到网站的反爬虫机制,那么宏哥在自己本地做一个网页,没有那个反爬虫的机制,谷歌浏览器是不是就可以验证成功了,宏哥就想验证一下自己想法,于是写了这一篇文章,另外也是 ...

  3. 《手把手教你》系列技巧篇(二十九)-java+ selenium自动化测试- Actions的相关操作上篇(详解教程)

    1.简介 有些测试场景或者事件,Selenium根本就没有直接提供方法去操作,而且也不可能把各种测试场景都全面覆盖提供方法去操作.比如:就像鼠标悬停,一般测试场景鼠标悬停分两种常见,一种是鼠标悬停在某 ...

  4. 《手把手教你》系列技巧篇(三十)-java+ selenium自动化测试- Actions的相关操作下篇(详解教程)

    1.简介 本文主要介绍两个在测试过程中可能会用到的功能:Actions类中的拖拽操作和Actions类中的划取字段操作.例如:需要在一堆log字符中随机划取一段文字,然后右键选择摘取功能. 2.拖拽操 ...

  5. 01.Java 开发简单的计算器

    难度为一般,适合具有 Java 基础和 Swing 组件编程知识的用户学习一. 实验介绍1.1 实验内容本次实验利用Java开发一个可以进行简单的四则运算的图形化计算器,会使用到 Java Swing ...

  6. java 发送邮件 email相关操作代码测试,生成复杂格式邮件,发送邮件相关操作

    项目源码下载:http://download.csdn.net/detail/liangrui1988/6720047 效果图: 相关代码: test1 package com.mail; impor ...

  7. Java实现简单混合计算器

    这个计算器并不是基于逆波兰实现的,而是通过简单的递归,一层一层地计算最终求得结果. 具体的图形化界面可以参考我的另外一个篇博客:基于逆波兰表达式实现图形化混合计算器,这里我只是简单的介绍一下怎样求得算 ...

  8. 超简单jQuary链式操作代码实现手风琴效果

    超简单jQuery代码实现手风琴效果 HTML代码 <div id="cont"> <div> <p>人生若只如初见</p> < ...

  9. Java 最简单的计算器——使用Args参数

    public class Test{ public static void main(String[] args){ if(args.length<3){ System.out.println( ...

  10. MYSQL 简单的建库操作代码

    一.查询所有数据库 代码:show databases; 成功后如下图: 二.建立一个数据库 代码:create database test3: 成功后如下图: 三.连接数据库 代码:use test ...

随机推荐

  1. python进阶之路20 正则表达式 re模块

    正则表达式前情 案例:京东注册手机号校验 基本需求:手机号必须是11位.手机号必须以13.15.17.18.19开头.必须是纯数字 '''纯python代码实现''' # while True: # ...

  2. ABC238E Range Sums

    简要题意 有一个长度为 \(N\) 的序列 \(a\),你知道 \(Q\) 个区间的和.求是否可以知道 \([1,n]\) 的和. \(1 \leq N,Q \leq 2 \times 10^5\) ...

  3. 【ASP.NET Core】按用户角色授权

    上次老周和大伙伴们分享了有关按用户Level授权的技巧,本文咱们聊聊以用户角色来授权的事. 按用户角色授权其实更好弄,毕竟这个功能是内部集成的,多数场景下我们不需要扩展,不用自己写处理代码.从功能语义 ...

  4. jupyter的配置

    step1.安装jupyter 使用pip或者conda等包管理工具安装jupyter(这部分倒是没有任何难度,一般也没有什么坑) conda install jupyter notebook或者pi ...

  5. Crossplane - 比 Terraform 更先进的云基础架构管理平台?

    ️URL: https://crossplane.io/ Description: 将云基础架构和服务组成自定义平台 API 简介 在 11 月的 KCD 上海现场,听了一场阿里云的工程师关于他们自己 ...

  6. obj转换为gltf方法three.js一步一步来--性能优化超厉害的!!!!!超赞操作!!!Obj模型转Gltf模型并超强压缩!!!!!

    1.准备好模型文件table.obj和table.mtl 2.下载obj2gltf 下载地址https://github.com/AnalyticalGraphicsInc/obj2gltf 解压至文 ...

  7. ua5.4源码剖析:三. C++与Lua相互调用

    概述 从本质上来看,其实说是不存在所谓的C++与lua的相互调用.lua是运行在C上的,简单来说lua的代码会被编译成字节码在被C语言的语法运行.在C++调用lua时,其实是解释运行lua文件编译出来 ...

  8. MySQL 如何实现数据更新

    一般在更新时会遇到以下场景:1.所有字段全部更新:2.根据条件更新字段中的某部分内容:3.根据不同的条件更新不同的值,以下是几种场景中常用的update方法. 一.方法分类 二.具体用法 (1)根据条 ...

  9. Linux密钥认证

    网站集群批量管理-秘钥认证 一.概述 管理更加轻松:两个节点,通过秘钥形式进行访问,不需要输入密码,单向 应用场景: 一些服务在使用前要求做秘钥认证 手动写批量管理脚本 名字:秘钥认证,免密码登录,双 ...

  10. elk引入redis

    1.引入日志依赖 <dependency> <groupId>com.cwbase</groupId> <artifactId>logback-redi ...