Как напечатать результат метода с System.out.println - PullRequest
0 голосов
/ 08 февраля 2010

Как распечатать результат метода? Я хочу распечатать возврат перевода, но он показывает true или false. Предложения, пожалуйста.

/**
     * @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);            
        }

Ответы [ 5 ]

2 голосов
/ 08 февраля 2010
public String translate(boolean trueOrFalse) {       
    if(pback == true) ...

Вероятно, должно быть:

public String translate(boolean trueOrFalse) {       
    if(trueOrFalse) ...
2 голосов
/ 08 февраля 2010

Пожалуйста, не забудьте вызвать метод, я думаю, вы написали его по какой-то причине.

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

Теперь, несколько предложений, сделайте себе одолжение и измените метод, как показано ниже. if(pback == true), не имеет смысла. См. Испытание Истины для вашего развлечения.

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 оператора возврата, сделайте это,

public String translate(boolean pback) {
   String yesNo;
   if(pback) {
      yesNo = "yes";
   } else {
      yesNo = "no";
   }
   return yesNo;
}
2 голосов
/ 08 февраля 2010
public void displaybook()
    {
        System.out.println("Paperback: " + translate(pback));       
    }
2 голосов
/ 08 февраля 2010

Похоже, вы ошибочно объединили свою переменную pback вместо результата вашего метода перевода в следующем выражении:

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

Вместо этого замените это утверждение на

System.out.println("Paperback: " + translate(pback)); 
2 голосов
/ 08 февраля 2010
System.out.println("Paperback: " + translate(pback));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...