2

このメソッドを終了する方法を考え出そうとしています

このバージョンでは、最後の「税金を変数に解決できない」

public double calculateTax() {

  if (salary < 9440){
    double tax = 0;
  }
  else {
    double newSalary = salary - 9440;


    if (newSalary <= 32010) {
      double tax = newSalary*0.2;
    } else {
      double tax1 = 32010*0.2;
      double tax2 = (newSalary - 32010)*0.4;
      double tax = tax1 + tax2;
    }
  } 
  return tax;
}

ただし、このバージョンでは「メソッドは double 型の結果を返さない」

public double calculateTax() {

  if (salary < 9440){
    double tax = 0;
  } else {
    double newSalary = salary - 9440;


    if (newSalary <= 32010) {
      double tax = newSalary*0.2;
    } else {
      double tax1 = 32010*0.2;
      double tax2 = (newSalary - 32010)*0.4;
      double tax = tax1 + tax2;

      return tax;
    }
  } 
}

このプロジェクトの税金用に別のフィールドを定義できません。返品税はどこに入力すればよいですか? ありがとうございました :)

4

6 に答える 6

0

あなたのコードは紛らわしく、フォーマットが適切ではなく、マジック ナンバーが散らばっています。スタイルが重要: コードの書き方にもっと注意を払いましょう。ずさんなスタイルは、コードを読みにくく理解しにくくします。

このように書くかもしれません:

public double calculateTax() {
    double tax = 0.0;
    if (salary < 9440) {
       tax = 0.0;
    } else {
       double newSalary = salary - 9440;
       if (newSalary <= 32010) {
           tax = newSalary*0.2;
       } else {
           double tax1 = 32010*0.2;
           double tax2 = (newSalary - 32010)*0.4;
           tax = tax1 + tax2;
       }
    } 
    return tax;
}

または私はしないかもしれません。悪い質。

于 2013-10-16T16:43:14.217 に答える