Sobes.tech
Junior — Middle

Como se pode determinar se dois objetos referenciam a mesma instância na memória?

sobes.tech IA

Resposta da IA

No Android (Java/Kotlin), para verificar se dois objetos referenciam a mesma instância na memória, usa-se o operador == (em Kotlin) ou o operador == em Java para verificação de referência (em Java, para verificar referência usa-se ==, e para comparar conteúdo usa-se o método equals()).

Exemplo em Kotlin:

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

println(obj1 == obj2) // true, pois as referências são iguais
println(obj1 == obj3) // false, instâncias diferentes

Em Java:

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

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

Portanto, o operador == compara referências, e o método equals() compara o conteúdo dos objetos.