Junior — Middle
Mi a feladata az equals metódusnak az Any osztályban?
sobes.tech MI
Válasz az MI-től
Az equals metódus az Any osztályban az aktuális objektumot egy másik objektummal összehasonlítva ellenőrzi azok egyenlőségét. Androidon (és Java/Kotlin) ez a metódus általában felülíródik, hogy az objektumok tartalom szerinti összehasonlását valósítsa meg, nem a referencia szerint. Ez fontos a kollekciók és más adatstruktúrák helyes működése szempontjából.
Kotlin példa:
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
}
}