Vergleichen von Strings (Java)

Aus Byte-Welt Wiki
Version vom 10. August 2013, 15:42 Uhr von L-ectron-x (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „Strings werden '''nicht''' wie primitive Datentypen mit dem "==" Operator verglichen! Strings sind Objekte, die mit der Methode <code>equals(Object obj)</code> ve…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springenZur Suche springen

Strings werden nicht wie primitive Datentypen mit dem "==" Operator verglichen! Strings sind Objekte, die mit der Methode equals(Object obj) verglichen werden. Wenn man sie mit "==" vergleicht, wird nicht der Inhalt der Objekte, sondern die Referenz auf das Objekt selbst verglichen.

<code=java>String a = new String("blabla"); String b = new String("blabla"); String c = b;

if (a.equals(b)) {

   System.out.println("equals");

}

if (a == b) {

   System.out.println("==");

}

if(c == b) {

  System.out.println("gleich");

}</code=java>

Ausgabe: equals - da der Text der beiden String Objekte identisch ist gleich - da c und b auf das gleiche Objekt zeigen