Vergleichen von Strings (Java): Unterschied zwischen den Versionen
Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen (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…“) |
|||
Zeile 20: | Zeile 20: | ||
Ausgabe: | Ausgabe: | ||
− | <code>equals</code> - da der Text der beiden String Objekte identisch ist | + | <code>equals</code> - da der Text der beiden String Objekte identisch ist<br> |
<code>gleich</code> - da <code>c</code> und <code>b</code> auf das gleiche Objekt zeigen | <code>gleich</code> - da <code>c</code> und <code>b</code> auf das gleiche Objekt zeigen |
Version vom 10. August 2013, 15:42 Uhr
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