Как я могу использовать оператор возврата логического значения в другом методе? - PullRequest
0 голосов
/ 05 декабря 2011

У меня есть метод, который возвращает true или false,

public boolean confirmVotes()
{
System.out.println("Your vote for President is:" + getVotes() );
System.out.println("your vote for Vice President is:" + getVotes());
System.out.println("Is this correct? Yes or No?");
Scanner keyboard = new Scanner(System.in);
String answer = keyboard.nextLine();
if (answer.equalsIgnoreCase("Yes"))
    return true;
 else 
   return false;
}

Как использовать этот оператор возврата в другом методе?Это то, что я пытаюсь сделать

 public void recordVote()
{
        if  comfirmVotes returns true for X
             do this for y

}

Ответы [ 4 ]

6 голосов
/ 05 декабря 2011

Если вы проверите свой метод подтверждения голосов, вы заметите, что вы уже решили эту проблему: -

if(answer.equalsIgnoreCase("Yes"))

.equalsIgnoreCase (String s) - это метод, который возвращает логическое значение, и вы уже создали оператор if на основе его возвращаемого значения. Таким образом: -

if (confirmVotes())
{
  // Do whatever
}

Также стоит отметить, вы можете заменить: -

if(answer.equalsIgnoreCase("Yes"))
  return true;
else
  return false;

с: -

return answer.equalsIgnoreCase("Yes");
2 голосов
/ 05 декабря 2011
public void myMethod(){
    if(confirmVotes()){
        doStuff();
    }
    else{
        doOtherStuff();
    }
}
2 голосов
/ 05 декабря 2011
public void recordVote() {
    if (confirmVotes()) { // your method should return true. if it does, it will process the if block, if not you can do stuff on the else block

    } else {

    }
} 
0 голосов
/ 05 декабря 2011

Я думаю, что ваша проблема в том, как вызвать метод, принадлежащий тому же классу, из другого метода этого класса.(Поскольку вы уже использовали оператор возврата другого метода внутри вашего первого блока кода.)

Вы можете использовать ключевое слово this для ссылки на текущий экземпляр класса или, если это вызоввнутри нестатического метода вам не нужно его использовать.

например:

if (this.confirmVotes() == true)

или (если вызывающий метод является методом-членом (нестатическим) или вызываетсяМетод является статическим методом.снова логическое значение true.

...