2010-02-08 83 views
0

如何打印出方法的結果?我想打印出翻譯的回報,但它顯示真或假。建議請。如何使用System.out.println打印方法的結果

/** 
    * @returns the string "yes" if "true" and "no" if false 
    */ 
    public String translate(boolean trueOrFalse)  
     {  
     if(pback == true) 
      { 
       return "yes"; 
      } 
     else 
      { 
       return "no"; 
      } 
     } 
    /** 
    * Display book info 
    */ 
    public void displaybook() 
     { 
      System.out.println("Title: " + title); 
      System.out.println("Author: " + author); 
      System.out.println("ISBN: " + isbn); 
      System.out.println("Pages: " + pages); 
      System.out.println("Paperback: " + pback); 
      System.out.println("Suggested Price: " + price);    
     } 
+1

家庭作業?同一所學校? http://stackoverflow.com/questions/2216527/how-to-write-a-method-that-translates-a-boolean-into-yes-or-no – 2010-02-08 08:33:23

回答

1
System.out.println("Paperback: " + translate(pback)); 
1
public void displaybook() 
    { 
     System.out.println("Paperback: " + translate(pback));  
    } 
1

看起來你錯誤地連接起來的可變的pback,而不是在下面的語句的翻譯方法的結果:

System.out.println("Paperback: " + pback); 

相反,替換語句

System.out.println("Paperback: " + translate(pback)); 
1

請不要忘記調用這個方法,因爲我是出於某種原因寫的。

System.out.println("Paperback: " + translate(pback)); 

現在,很少有建議,請你幫忙,改變下面的方法。 if(pback == true),沒有任何意義。看,The Test of Truth,爲您的娛樂。

public String translate(boolean pback) { 
    return pback ? "yes" : "no"; 
} 

好吧,如果你不喜歡的三元,爲此,

public String translate(boolean pback) { 
    if(pback) return "yes"; 
    else return "no"; 
} 

如果你喜歡大括號,括號放在那裏,

public String translate(boolean pback) { 
    if(pback) { 
     return "yes"; 
    } else { 
     return "no"; 
    } 
} 

如果你不喜歡2 return statement,do this,

public String translate(boolean pback) { 
    String yesNo; 
    if(pback) { 
     yesNo = "yes"; 
    } else { 
     yesNo = "no"; 
    } 
    return yesNo; 
} 
1
public String translate(boolean trueOrFalse) {  
    if(pback == true) ... 

大概應該是:

public String translate(boolean trueOrFalse) {  
    if(trueOrFalse) ...