⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 calculator.java

📁 Java编写个人所得税计算器, 可以自定义所得税表进行运算, 程序包含完整的Document和测试运行环境
💻 JAVA
字号:
package calculator;

import java.io.IOException;
/**
 * calculator类是这个程序的核心,税率的计算就在这个类中进行
 * @author ZiHi
 * @param TaxTable tt 是对传进来的taxtable进行复制用,目的是保护程序中真正使用的taxtable
 * @param double tax 是存放最后计算税率的
 * @param int income 是存放用户输入收入的
 */
public class Calculator {
	public TaxTable tt;
	double tax;
	int income;
	/**
	 * calculator的构造函数,进行各种参数的初始化其中tax=0
	 * @param int tincome 初始化时使用的收入参数
	 * @param TaxTable t 初始化时使用的taxtable
	 */
	public Calculator(int tincome,TaxTable t){
		tt=new TaxTable(t);
		System.out.print(tt.toString());
		income=tincome-tt.base;
		tax=0;	
	}
	/**
	 * 这个函数用于获得计算应缴个人所得税,其目的在于不让用户改变所得税的数目,只能查看
	 * @return tax 个人所得税
	 */
	public double GetTax()
	{
		return tax;
	}
	/**
	 * 这个函数用于计算税率,把接收到的收入减去起征点,再进行收入定位,最后进行税的计算
	 */
	public void Maketax()
	{
		
		int i=tt.rank-1;
		
		
		TaxRow temp=new TaxRow(tt.table.get(i));
		
		while(income<temp.level){
			i--;
			temp=(TaxRow)tt.table.get(i);
		}
	
		
			int ti=income-temp.level;
			tax+=ti*(temp.rate/100);
			TaxRow temp1;
			do{
			i--;
			temp1=new TaxRow(tt.table.get(i));
			tax+=(temp.level-temp1.level)*(temp1.rate/100);
			temp=(TaxRow)tt.table.get(i);
			}while(temp1.level>0);
		
	}
	
	public static void main(String args[]) throws IOException
	{
		TaxTable testTable=new TaxTable();
		System.out.println("Now runinng the calculator test program!");
		System.out.println("The test income is 4300");
		Calculator testCa=new Calculator(4300,testTable);
		testCa.Maketax();
		System.out.println("The tax for test is "+testCa.GetTax());
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -