Switch-Anweisung innerhalb der Do-While-Schleife nicht verlassen

Den code nicht verlassen, nachdem ich den Typ "Stopp" - für einige Grund. Warum?
Step-by-step debugging zeigt, dass, nachdem ich enter "stop" ist es Wert besteht aus genau 's','t','o','p' ohne Zeilenumbrüche, etc. - allerdings ist der code noch goesn nicht verlassen. Könnte jemand sagen, warum, bitte?

import java.util.Scanner;

public class Application {
public static void main(String[] args) {
    Scanner input = new Scanner(System.in);

    //asking username
    System.out.print("Username: ");
    String username = input.nextLine();

    String inpText;
    do {
        System.out.print(username + "$: ");
        inpText = input.nextLine();
        System.out.print("\n");
        //analyzing
        switch (inpText) {
        case "start":
            System.out.println("> Machine started!");
            break;
        case "stop":
            System.out.println("> Stopped!");
            break;
        default:
            System.out.println("> Command not recognized");
        }
    } while (inpText != "stop");

    System.out.println("Bye!..");
}
}
  • Lesen Sie diese: Wie kann ich strings vergleichen im Java? und dann fixieren Sie Ihre while Zustand.
  • Danke @jlordo. Konnte mir nicht vorstellen, der Grund war im Vergleich selbst; und die damit verknüpfte Frage deckt alles.
InformationsquelleAutor evictorov | 2013-08-02
Schreibe einen Kommentar