2016-11-18 2 views
-2

Если вы вставляете недопустимый ввод, т. Е. (333), вы создадите игру для угадывания кода, то есть (333) она предложит вам изменить свое предположение. Однако это работает только на глазок # 1 на глазок # 2 - # 6 это позволит любому неверному вводу пройти черезJava Loop работает только один раз

public void game(){ 
    System.out.println("Enter guess #" + (guessAtt + 1)); 
    guess = keyboard.next(); 
    guess = guess.toLowerCase(); 
    if(guess.equals(quit)){ 
     System.exit(0); 
    } 
    if (guess.length() < 2){ 
     System.out.println("Guess Too short try again");  
     game();  
    } 
    if (guess.length() > 3){ 
     System.out.println("Guess too long try again"); 
     game(); 
    } 
    letter1 = guess.charAt(0); 
    letter2 = guess.charAt(1); 
    letter3 = guess.charAt(2); 
    isValid(); 

} 
public boolean isValid(){ 


if (letter1.equals('a')|| letter1.equals('b')|| letter1.equals('c')|| letter1.equals('d')|| letter1.equals('e')){ 
     isValid1 = true; 
} 
if(letter2.equals('a')|| letter2.equals('b')|| letter2.equals('c')|| letter2.equals('d')|| letter2.equals('e')){ 
    isValid2 = true; 
} 
if(letter3.equals('a')|| letter3.equals('b')|| letter3.equals('c')|| letter3.equals('d')|| letter3.equals('e')){ 
    isValid3 = true; 
} 
if(isValid1 == true && isValid2 == true && isValid3 == true){ 
    isValid = true; 
} 
else { 
    isValid = false; 

} 


while (isValid == false){ 
    System.out.println("invalid input try again\n"); 
    game(); 

} 
return isValid; 
} 
+2

В коде, который вы предоставили, нет цикла. –

+5

Где ваша петля? – Berger

+0

Похоже, что 'game()' вызывается в цикле, и OP не предоставил его. –

ответ

2

вы оба могли использовать время цикл в игре, нарушающей при IsValid() возвращает истинный. Вы также можете вызвать функцию игры, если isValid() возвращает значение false. Теперь вы запрашиваете логическое значение, но вы его не используете. Независимо от того, что он возвращает, если ваше значение содержит правильную длину, игра заканчивается.

Смежные вопросы