2017-11-27 9 views
-1

これは複数のreturn文を含む銀行の顧客クラスです。私の質問は、これらの複数のreturn文を取り除くにはどうすればよいのですか?また、各メソッドの最後に複数のreturnを1つだけ持ちたいと思っています。メソッド内の複数のreturn文を取り除く方法

public class BankCustomer { 
    //define the attribute 
    private String name; 
    private int chequeAcctNum; 
    private double chequeBal; 
    private int savingAcctNum; 
    private double savingBal; 

    //define constractor 
    public BankCustomer(String n, int chqAcctNum, double chqBal 
    , int savAcctNum, double savBal) 
    { 
     name = n; 
     chequeAcctNum = chqAcctNum; 
     chequeBal = chqBal; 
     savingAcctNum = savAcctNum; 
     savingBal = savBal;   
    } 

    //define the methods 
    // Call withdraw from chequing method 
    public boolean withdrawChequing(double amount) { 
      if(chequeBal >= amount) { 
      chequeBal-=amount; 
      return true;  
      } else {    
      return false; 
      }  
    } 
+1

に条件を割り当てます'boolean'変数を返し、それを返します。 –

答えて

0

この何か:私の意見では

public boolean withdrawChequing(double amount) { 
    boolean bRetVal = false; 
    if(chequeBal >= amount) { 
     chequeBal-= amount; 
     bRetVal = true; 
    } 
    return bRetVal; 
} 
1

、複数のreturn文を持つ方法は完全に罰金です。正しく使用すると、コードを読みやすくすることができます。メソッドを変更する必要はありません。

あなたが主張するのであれば、それを1つのreturn文に減らす方法です。

戻り値を格納するブール変数を作成します。

boolean retVal = false; 

をそして条件をご確認ください:

if(chequeBal >= amount) { 
    chequeBal-=amount; 
    retVal = true;  
} 

その後retValを返す:

return retVal; 
関連する問題