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
    }
}