Hilfe, ich finde den Fehler nicht!
-
Ich will folgendes Programm mit den Parametern "Hello" und "World" starten,
wenn etwas anderes eingegeben wurde dann soll er mir "Eingabe war falsch"
ausgeben.Das Problem ist jetzt, selbst wenn ich das Programm richtig starte,
gibt er mir die Meldung "Eingabe war falsch".$ java HelloWorld Hello World
Und ich weiß nicht warum der bei der If-Abfrage, siehe Programm
falsch abzweigt.Hier mein Programm:
public class HelloWorld { public static void main(String[] args) { if ( 2 == args.length ) { if ( args[0] != "Hello" || args[1] != "World") { System.out.println("Eingabe war falsch"); } else { System.out.println("Eingabe korrekt"); } } else { System.out.println("Bitte 2 Parameter angeben"); } } }
-
Deine if-Abfrage prüft auf Identität und nicht auf Gleichheit. Es wird geguckt, ob es identische Strings sind und nicht, ob es Strings mit gleichem Inhalt sind. Richtig geht das so:
if (myString.equals(myOtherString))
-
Ok, hat sich erledigt.
-
Gregor schrieb:
Deine if-Abfrage prüft auf Identität und nicht auf Gleichheit. Es wird geguckt, ob es identische Strings sind und nicht, ob es Strings mit gleichem Inhalt sind. Richtig geht das so:
if (myString.equals(myOtherString))
Trotzdem danke nochmal.