Junior — Middle
Na čo sa v jazyku Kotlin používa metóda hashCode()?
sobes.tech AI
Odpoveď od AI
Metóda hashCode() v Kotlin sa používa na získanie hash kódu objektu — celočíselnej hodnoty, ktorá pomáha efektívne ukladať a vyhľadávať objekty v kolekciách ako HashMap alebo HashSet.
Je dôležité, aby ak sú dva objekty rovnaké podľa metódy equals(), ich hashCode() tiež zodpovedali. To zabezpečuje správne fungovanie hashovaných dátových štruktúr.
Príklad prepísania hashCode() spolu s equals():
data class User(val id: Int, val name: String)
// V dátovej triede sú hashCode a equals implementované automaticky
// Ak píšeme triedu ručne:
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
}
}