だから私は国民保険を計算しようとしていて、3 つの IF ステートメントを使用しています。
/does not work
public double calculateNotContOut(){
if (calculateWeeklyEarning()<upperEarningLevel){
return (((calculateWeeklyEarning()-primaryThreshold)*primaryClassBetween)*52);
}
else {
return (((upperEarningLevel-primaryThreshold)*primaryClassBetween+(calculateWeeklyEarning()-upperEarningLevel)*primaryClassAbove)*52);
}
}
//does not work
public double calculateContOut(){
if (calculateWeeklyEarning()<upperEarningLevel){
return (((calculateWeeklyEarning()-primaryThreshold)*calculateReducedContribution())*52);
}
else{
return (((upperEarningLevel-primaryThreshold)*calculateReducedContribution()+(calculateWeeklyEarning()-upperEarningLevel)*primaryClassAbove)*52);
}
}
public double calculateNationalInsurance(){
if (contractedOut){
return (calculateContOut());
}
else {
return (calculateNotContOut());
}
}
それらは正しい値を返しません。誰か助けてくれませんか?