Java实现简单个人所得税计算器相关操作代码
/**
* 个税计算器
* 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实现简单个人所得税计算器相关操作代码的更多相关文章
- 乐字节Java反射之四:反射相关操作
大家好,乐字节小乐继续为Java初学者讲述Java基础知识.上次说到乐字节Java反射之三:方法.数组.类加载器,这次是Java反射之四:反射相关操作 1.操作属性 //1.获取Class对象 Cla ...
- 《手把手教你》系列技巧篇(三十一)-java+ selenium自动化测试- Actions的相关操作-番外篇(详解教程)
1.简介 上一篇中,宏哥说的宏哥在最后提到网站的反爬虫机制,那么宏哥在自己本地做一个网页,没有那个反爬虫的机制,谷歌浏览器是不是就可以验证成功了,宏哥就想验证一下自己想法,于是写了这一篇文章,另外也是 ...
- 《手把手教你》系列技巧篇(二十九)-java+ selenium自动化测试- Actions的相关操作上篇(详解教程)
1.简介 有些测试场景或者事件,Selenium根本就没有直接提供方法去操作,而且也不可能把各种测试场景都全面覆盖提供方法去操作.比如:就像鼠标悬停,一般测试场景鼠标悬停分两种常见,一种是鼠标悬停在某 ...
- 《手把手教你》系列技巧篇(三十)-java+ selenium自动化测试- Actions的相关操作下篇(详解教程)
1.简介 本文主要介绍两个在测试过程中可能会用到的功能:Actions类中的拖拽操作和Actions类中的划取字段操作.例如:需要在一堆log字符中随机划取一段文字,然后右键选择摘取功能. 2.拖拽操 ...
- 01.Java 开发简单的计算器
难度为一般,适合具有 Java 基础和 Swing 组件编程知识的用户学习一. 实验介绍1.1 实验内容本次实验利用Java开发一个可以进行简单的四则运算的图形化计算器,会使用到 Java Swing ...
- java 发送邮件 email相关操作代码测试,生成复杂格式邮件,发送邮件相关操作
项目源码下载:http://download.csdn.net/detail/liangrui1988/6720047 效果图: 相关代码: test1 package com.mail; impor ...
- Java实现简单混合计算器
这个计算器并不是基于逆波兰实现的,而是通过简单的递归,一层一层地计算最终求得结果. 具体的图形化界面可以参考我的另外一个篇博客:基于逆波兰表达式实现图形化混合计算器,这里我只是简单的介绍一下怎样求得算 ...
- 超简单jQuary链式操作代码实现手风琴效果
超简单jQuery代码实现手风琴效果 HTML代码 <div id="cont"> <div> <p>人生若只如初见</p> < ...
- Java 最简单的计算器——使用Args参数
public class Test{ public static void main(String[] args){ if(args.length<3){ System.out.println( ...
- MYSQL 简单的建库操作代码
一.查询所有数据库 代码:show databases; 成功后如下图: 二.建立一个数据库 代码:create database test3: 成功后如下图: 三.连接数据库 代码:use test ...
随机推荐
- [编程基础] Python格式化字符串常量f-string总结
Python格式化字符串常量f-string总结 本文主要总结在Python中如何使用格式化字符串常量f-string(Formatted string literals).在 Python 程序中, ...
- S2-032 CVE-2016-3081 远程代码执行
漏洞名称 CVE-2016-3081 S2-032 远程代码执行 利用条件 Struts 2.3.20 - Struts Struts 2.3.28 ( 2.3.20.3 和 2.3.24.3 除外) ...
- python之路22 hashlib、subprocess、logging模块
hashlib加密模块 hashlib模块为不同的安全哈希/安全散列(Secure Hash Algorithm)和 信息摘要算法(Message Digest Algorithm)实现了一个公共的. ...
- C++初探索
C++初探索 前言 C++ 和 C 的区别主要在8个方面: 输入和输出 引用 inline函数 函数默认值 函数重载 模板函数 new 和 delete namespace 我仅对印象不深的地方做了总 ...
- 使用英特尔 Sapphire Rapids 加速 PyTorch Transformers 模型
大约一年以前,我们 展示 了如何在第三代 英特尔至强可扩展 CPU (即 Ice Lake) 集群上分布式训练 Hugging Face transformers 模型.最近,英特尔发布了代号为 Sa ...
- NG-ZORRO + Angular11增加自定义全局样式,不影响其他页面全局样式,仅作用于当前页面
实现只需要两步 ts import { ViewEncapsulation } from '@angular/core';// 关键代码 @Component({ selector: 'app-tes ...
- JS按空格和换行或者其他字符进行切割形成数组
据我所测试,目前最好用的代码是: 方案一 let arr = value.split(/[,,\s\n]/).filter(_ => _) 方案二 let arr = value.replace ...
- Java 进阶P-8.9+P-8.10
文件流 File Input Stream File Output Stream 对文件作读写操作 实际工程中已经较少使用 更常用的是以在内存数据或通信数据上建立的流,如数据库的二进制数据读写或网络端 ...
- ATM项目开发
目录 一.项目开发流程 1.项目需求分析: 2.项目架构设计: 3.项目分组开发: 4.项目提交测试: 5.项目交付上线: 二.项目需求分析 1.主题 2.项目核心 3.项目需求: 4.从需求中提炼出 ...
- python del 函数
用法: -------del用于list列表操作,删除一个或者连续几个元素. # 定义一个list >>> a = [1,2,3,4] >>> a [1,2,3, ...