✅ The verified answer to this question is available below. Our community-reviewed solutions help you understand the material better.
Wenn man den Inhalt von Referenzdatentypen vergleichen möchte, stößt man auf ein Problem. Ein Beispiel dafür ist, wenn man überprüfen möchte, ob ein eingegebener Text mit einem gespeicherten Text übereinstimmt. Das folgende Programmbeispiel zeigt dieses Problem:
Was passiert hier in diesem Beispiel? Wenn man sich das Speicherbild vorstellt, kommt man der Lösung näher:
Beim Vergleich mit ) wird der Inhalt der Variablen verglichen. Der Inhalt einer Referenzvariablen ist aber auf ihr zugehöriges Objekt, d.h. ein Verweis auf den Ort, wo das Objekt gespeichert ist (Schnur, Fernsteuerung, ...). Das eine -Objekt ist aber nicht an genau der gleichen Stelle gespeichert, wie das andere -Objekt (was ja auch nicht sein kann, da zwei unterschiedliche Objekte nicht an der gleichen Stelle sein können - oder hast du schon einmal 2 Dinge genau an der gleichen Stelle gesehen?). Deshalb ist auch ihre Referenz nicht gleich. Und damit liefert der Vergleich der beiden Referenzen ==
(oder auch !=
String
String
false
.
Wenn zwei String
-Variablen mit ==
verglichen werden, kommt zunächst
Obwohl beide String
-Variablen auf den inhaltlich gleichen Text verweisen, ist das Ergebnis eines String
-Vergleiches mit ==
oft (speziell wenn einer der String
-Werte eingelesen wurde).
Der Grund dafür ist, dass mit ==
der Inhalt der Variablen verglichen wird, und dieser ist jeweils eine .
Eine Referenz gibt aber
Get Unlimited Answers To Exam Questions - Install Crowdly Extension Now!