SWAnfängerfehler
Java: Zwei gleiche Strings, und == sagt trotzdem false
In Java ist == bei Strings manchmal true und meist false, weil es Referenzen vergleicht, nicht Inhalt. Die Sprachspezifikation nennt equals.
// Schlagwort
Alle 2 Layer-8-Fehler mit dem Schlagwort „equals“ – verifizierte Lösungen, trocken kommentiert.
In Java ist == bei Strings manchmal true und meist false, weil es Referenzen vergleicht, nicht Inhalt. Die Sprachspezifikation nennt equals.
Zwei Integer mit dem Wert 100 sind per == gleich, bei 1000 ist das offen. Die JLS garantiert identische Objekte nur von -128 bis 127.