Junior — Middle
Pentru ce este folosită metoda hashCode() în limbajul Kotlin?
sobes.tech AI
Răspuns de la AI
Metoda hashCode() în Kotlin este utilizată pentru a obține codul hash al unui obiect — o valoare întreagă care ajută la stocarea și căutarea eficientă a obiectelor în colecții precum HashMap sau HashSet.
Este important ca dacă două obiecte sunt egale conform metodei equals(), atunci și hashCode() lor să coincidă. Acest lucru asigură funcționarea corectă a structurilor de date bazate pe hash.
Exemplu de suprascriere a hashCode() împreună cu equals():
data class User(val id: Int, val name: String)
// Într-o clasă data, hashCode și equals sunt implementate automat
// Dacă scriem o clasă manual:
class Person(val id: Int, val name: String) {
override fun equals(other: Any?): Boolean {
if (this === other) return true
if (other !is Person) return false
return id == other.id && name == other.name
}
override fun hashCode(): Int {
var result = id
result = 31 * result + name.hashCode()
return result
}
}