Unterschied zwischen == und === in Java
Hallo zusammen! Ich komme mit den Vergleichsoperatoren in Java nicht klar. Ich weiß, dass es in JavaScript einen strikten Vergleich mit === gibt, aber in Java scheint es diesen Operator nicht zu geben. Wenn ich versuche === zu schreiben, gibt der Compiler einen Fehler aus.
Ich habe versucht == zum Vergleichen von Strings zu verwenden, aber ich bekomme unerwartete Ergebnisse. Zum Beispiel dieser Code:
String a = new String("test");\nString b = new String("test");\nSystem.out.println(a == b); // false\nSystem.out.println(a.equals(b)); // trueWarum gibt == false zurück, wenn die Strings gleich sind? Ich habe erwartet, dass == den Inhalt vergleicht, wie in JavaScript. Ich habe die Dokumentation gelesen – in Java vergleicht == Objektreferenzen.