2017-06-17 2 views
-1

Können Sie mir helfen, mit dem unten stehenden Code zu identifizieren, was ich vermisse? Ich benutze Eclipse.Strings und || Statements

Scanner scanner = new Scanner(System.in); 
    String input = scanner.nextLine(); 
    { 
    if (input.equalsIgnoreCase(("front door") || ("front") || ("basement") || ("basement entrance"))) 
     if (input.equalsIgnoreCase(("front door") || ("front"))   
      System.out.println("Maggie went to the side of the home and open the basement door. As the door opened, she could smell the dust from inside.");  
     else  
      if ((input.equalsIgnoreCase("basement") || ("basement entrance"))) 
       System.out.println("Maggie walks up the steps and slowly opens the front door.");    
    else  
     System.out.println("That is not a correct answer"); 
+1

Verwendung '{}' mit Ihrem ifs klar sein aussehen sollte, die, wenn hat die sonst .. –

+1

Die Operanden auf beiden Seiten des || Der Operator muss einen booleschen Wahr/Falsch-Wert haben. Sie sind keine zusätzlichen Möglichkeiten für einen früheren Funktionsaufruf. –

Antwort

0

Ich denke, es gibt ein paar Fehler zu tun: 1. If-else-Logik:

a) if (input.equalsIgnoreCase (("vordere Tür") || ("vorne") || ("Keller") || ("Kellereingang"))) if (input.equalsIgnoreCase (("front Tür ") || (" vorne "))

Was meinst du hier? Zweitens, wenn es redundant ist. b)

sonst
if ((input.equalsIgnoreCase ("Keller") || ("Kellereingang")))

dieser Teil nicht erreichbar ist, denn wenn sie sich bezieht.

  1. Syntaxfehler in if (Bedingung).

Angenommen, es llke

String input = scanner.nextLine(); 
     { 
      input = input.toLowerCase(); 

     if (input.equals("front door") || input.equals("front"))    
       System.out.println("Maggie went to the side of the home and open the basement door. As the door opened, she could smell the dust from inside.");  
     else if (input.equals("basement") || input.equals("basement entrance")) 
        System.out.println("Maggie walks up the steps and slowly opens the front door.");    
     else  
      System.out.println("That is not a correct answer"); 
+1

Klammern um die 'if' Körper legen! –

0

Das ist nicht, wie Sie logische oder Operator verwenden, haben Sie so etwas wie

if (input.equalsIgnoreCase("front door") || input.equalsIgnoreCase("front") || 
    input.equalsIgnoreCase("basement") || input.equalsIgnoreCase("basement entrance")) { 
    ... 
}