Vergleichen von Strings (Java): Unterschied zwischen den Versionen
Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springenK |
K |
||
Zeile 3: | Zeile 3: | ||
Wenn man sie mit "==" vergleicht, wird nicht der Inhalt der Objekte, sondern die Referenz auf das Objekt selbst verglichen. | Wenn man sie mit "==" vergleicht, wird nicht der Inhalt der Objekte, sondern die Referenz auf das Objekt selbst verglichen. | ||
− | < | + | <syntaxhighlight lang="java">String a = new String("blabla"); |
String b = new String("blabla"); | String b = new String("blabla"); | ||
String c = b; | String c = b; | ||
Zeile 17: | Zeile 17: | ||
if(c == b) { | if(c == b) { | ||
System.out.println("gleich"); | System.out.println("gleich"); | ||
− | }</ | + | }</syntaxhighlight> |
Ausgabe:<br> | Ausgabe:<br> |
Version vom 8. März 2018, 20:02 Uhr
Strings werden nicht wie primitive Datentypen mit dem "==" Operator verglichen!
Strings sind Objekte, die mit der Methode Object#equals(Object obj) verglichen werden.
Wenn man sie mit "==" vergleicht, wird nicht der Inhalt der Objekte, sondern die Referenz auf das Objekt selbst verglichen.
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");
}
Ausgabe:
equals
- weil der Text der beiden String Objekte identisch istgleich
- weilc
undb
auf das gleiche Objekt zeigen
Fragen
Das Thema wurde nicht ausreichend behandelt? Du hast Fragen dazu und brauchst weitere Informationen? Lass Dir von uns helfen!
- Besuche uns im Byte-Welt-Forum
- Besuche unseren Chat
Wir helfen dir gerne!
Dir hat dieser Artikel gefallen? Oder Du hast Fehler entdeckt und möchtest zur Berichtigung beitragen? Prima! Schreibe einen Kommentar!
Du musst angemeldet sein, um einen Kommentar abzugeben.