Junior — Middle
Na czym polega cel metody equals w klasie Any?
sobes.tech AI
Odpowiedź od AI
Metoda equals w klasie Any służy do porównania bieżącego obiektu z innym obiektem pod kątem równości. W Androidzie (i Java/Kotlin) ta metoda jest zazwyczaj nadpisywana, aby zdefiniować logikę porównania obiektów na podstawie ich zawartości, a nie odwołania. Jest to ważne dla poprawnego działania kolekcji i innych struktur danych.
Przykład w Kotlin:
class Person(val name: String, val age: Int) {
override fun equals(other: Any?): Boolean {
if (this === other) return true
if (other !is Person) return false
return name == other.name && age == other.age
}
override fun hashCode(): Int {
return name.hashCode() * 31 + age
}
}