java計算個稅例子:
/**
* @author Kun Sun * @Date: 2013.10.15 */public class Employee { // 雇員類
private String ID; ? // ID
private String name; // 姓名
private int salary; ?// 工資薪金所得
private int insureHome; ?// “五險壹金”數額
private int deduct; ?// 扣除數額
Employee(){
}
Employee(String ID,String name){ // 帶參數的構造方法
this.ID = ID;
this.name = name;
}
Employee(String ID,String name,int salary,int insureHome,int deduct){ ?// 帶參數的構造方法
this.ID = ID;
this.name = name;
this.salary = salary;
this.insureHome = insureHome;
this.deduct = deduct;
}
public String getID() {
return ID;
}
public String getName() {
return name;
}
public int getSalary() {
return salary;
}
public int getInsureHome() {
return insureHome;
}
public int getDeduct() {
return deduct;
}
public void setID(String iD) {
ID = iD;
}
public void setName(String name) {
this.name = name;
}
public void setSalary(int salary) {
this.salary = salary;
}
public void setInsureHome(int insureHome) {
this.insureHome = insureHome;
}
public void setDeduct(int deduct) {
this.deduct = deduct;
}
public void selfValue(){ // 個人所得稅具體計算
double sefValue;
if(salary>=0 && salary<1500){
sefValue = (double)(salary-insureHome-deduct)*0.03 - 0;
}else if(salary>=1500 && salary<4500){
sefValue = (double)(salary-insureHome-deduct)*0.1 - 105;
}else if(salary>=4500 && salary<9000){
sefValue = (double)(salary-insureHome-deduct)*0.2 - 555;
}else if(salary>=9000 && salary<35000){
sefValue = (double)(salary-insureHome-deduct)*0.25 - 1005;
}else if(salary>=35000 && salary<55000){
sefValue = (double)(salary-insureHome-deduct)*0.30 - 2755;
}else if(salary>=55000 && salary<80000){
sefValue = (double)(salary-insureHome-deduct)*0.35 - 5505;
}else{
sefValue = (double)(salary-insureHome-deduct)*0.45 - 13505;
}
System.out.println(sefValue);
}
}
// 用於測試雇員類public class MainClass {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("第壹種調用方法:");
Employee emp = new Employee("1001","Sun");
emp.setSalary(12345);
emp.setInsureHome(890);
emp.setDeduct(55);
System.out.println("編號為"+emp.getID()+",姓名是"+emp.getName()+" 的應納稅額是:");
emp.selfValue();
System.out.println("------------------------\n第二種調用方法:");
Employee emp2 = new Employee("1001","Sun",12345,890,55);
System.out.println("編號為"+emp2.getID()+",姓名是"+emp2.getName()+" 的應納稅額是:");
emp2.selfValue();
System.out.println("------------------------\n第二種調用方法:");
Employee emp3 = new Employee();
emp3.setID("1001");
emp3.setName("Sun");
emp3.setSalary(12345);
emp3.setInsureHome(890);
emp3.setDeduct(55);
System.out.println("編號為"+emp3.getID()+",姓名是"+emp3.getName()+" 的應納稅額是:");
emp3.selfValue();
}
}
運行結果: