Ich bin ein Anfänger, der Java studiert und für meine Prüfungen revidiert, indem er die Fragen zu früheren Examensarbeiten beantwortet und es gibt eine Frage, auf der ich feststecke.Korrigieren eines Java-Programmcodefragments
Betrachten Sie das folgende Codefragment, das einen Eingabebefehl liest und dann verarbeitet.
String cmd = scanner.next();
if (cmd == "forward")
robot.forward(1);
else if (cmd == "turn")
robot.turn();
else
System.out.println("Unknown command: " + cmd);
Wenn das Programm Testen der Scanner in der String liest „vorwärts“ in cmd, aber das Programm gibt „Unbekannter Befehl: Vorwärts“.
a) Erklären Sie im Detail, warum dies geschieht.
b) Welche Änderungen sollten am Code vorgenommen werden, um diesen Fehler zu korrigieren?
Wenn jemand kann mir helfen Frage zu beantworten a) und b) Ich wäre dankbar.
p.s. Ich verstehe, dass dies keine Website ist, um nur nach Antworten zu suchen (#noeasywayout), also werde ich mein Bestes geben, hier nicht gierig zu handeln. Ich entschuldige mich für etwaige Unannehmlichkeiten.
Also hast du den Code ausprobiert? Hast du schon irgendwelche Ideen? –
Um nur auf die Richtung zu zeigen, kann man 'String' mit' == 'nicht vergleichen. Es ist besser, wenn Sie es selbst herausfinden. –