Multi-word scanner ingresso in java?

Così sto cercando di utilizzare un if-else, a seconda dell’input dell’utente. Funziona quando l’input dell’utente è solo una parola, tuttavia, word più ingressi non riconosciuta e attiva l’istruzione else. Come posso risolvere questo problema?

importazione java.util.Scanner;

 

pubblica classe MyFirstJavaClass {

public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner myScanner = new Scanner(System.in);
String answer;
System.out.println("Catch the tiger or run away?");
answer
= myScanner.next();

if (answer.equals("Catch the tiger" )) {
System.out.println("You've been mauled by a tiger! What were you thinking?");
answer
= myScanner.next();

} else {
System.out.println("run away");
}
}
}

InformationsquelleAutor Cataroux | 2013-11-22

 

3 Replies
  1. 5

    Sostituire:

    answer = myScanner.next();

    Con:

    answer = myScanner.nextLine();

    avanti a leggere solo nei prossimi valore fino a quando non raggiunge uno spazio o un carattere di nuova riga. Si desidera leggere in piena linea prima di fare il confronto

  2. 0

    Provare questo

    import java.util.Scanner;
    
    public class MyFirstJavaClass {
    
        public static void main(String[] args) {
            @SuppressWarnings("resource")
            Scanner myScanner = new Scanner(System.in);
            System.out.println("Catch the tiger or run away?");
            if (myScanner.hasNext("Catch the tiger")) {
                System.out.println("You've been mauled by a tiger! What were you thinking?");
            } else {
                System.out.println("run away");
            }
        }
    }

Lascia un commento