Sobes.tech
Junior — Middle

Wie kann man feststellen, ob zwei Objekte auf dasselbe Exemplar im Speicher verweisen?

sobes.tech KI

Antwort von AI

In Android (Java/Kotlin), um Operator == (in Kotlin) oder der Operator == in Java wird verwendet, um zu überprüfen, ob zwei Objekte auf dasselbe Instanz im Speicher verweisen (in Java wird == für Referenzüberprüfung verwendet, während equals() für Inhaltsvergleich).

Beispiel in Kotlin:

val obj1 = SomeClass()
val obj2 = obj1
val obj3 = SomeClass()

println(obj1 == obj2) // true, da die Referenzen gleich sind
println(obj1 == obj3) // false, verschiedene Instanzen

In Java:

SomeClass obj1 = new SomeClass();
SomeClass obj2 = obj1;
SomeClass obj3 = new SomeClass();

System.out.println(obj1 == obj2); // true
System.out.println(obj1 == obj3); // false

Daher vergleicht der Operator == die Referenzen, und die Methode equals() den Inhalt der Objekte.