Sobes.tech
Junior — Middle

Koja je svrha metode equals u klasi Any?

sobes.tech АИ

Одговор од АИ

Метода equals у класи Any служи за поређење тренутног објекта са другим објектом по питању једнакости. У Android-у (и Java/Kotlin), ова метода се обично преоптерећује да дефинише логику поређења објеката по њиховом садржају, а не по референци. Ово је важно за исправан рад колекција и других структура података.

Пример у 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
    }
}