Sobes.tech
Junior — Middle

Hoe kun je bepalen of twee objecten naar dezelfde instantie in het geheugen verwijzen?

sobes.tech AI

Antwoord van AI

In Android (Java/Kotlin), om te controleren of twee objecten naar dezelfde instantie in het geheugen verwijzen, wordt de operator == (in Kotlin) of de operator == in Java gebruikt voor referentiecontrole (in Java wordt == gebruikt voor referentiecontrole, en voor inhoudsvergelijking wordt de methode equals() gebruikt).

Voorbeeld in Kotlin:

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

println(obj1 == obj2) // true, omdat de referenties hetzelfde zijn
println(obj1 == obj3) // false, verschillende instanties

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

Dus, de operator == vergelijkt de referenties, en de methode equals() vergelijkt de inhoud van de objecten.