Sobes.tech
Junior — Middle

Какво е предназначението на метода equals в класа Any?

sobes.tech AI

Отговор от AI

Методът 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
    }
}