Sobes.tech
Junior — Middle

Was ist der Zweck der Methode equals in der Klasse Any?

sobes.tech KI

Antwort von AI

Die Methode equals in der Klasse Any dient dazu, das aktuelle Objekt mit einem anderen Objekt auf Gleichheit zu vergleichen. In Android (und Java/Kotlin) wird diese Methode in der Regel überschrieben, um die Vergleichslogik der Objekte anhand ihres Inhalts zu definieren, nicht anhand der Referenz. Dies ist wichtig für die korrekte Funktion von Sammlungen und anderen Datenstrukturen.

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