Junior — Middle
Πώς ορίζουμε την ισότητα δύο αντικειμένων στο πλαίσιο της σύγκρισης των αναφορών τους;
sobes.tech AI
Απάντηση από AI
Η ισότητα δύο αντικειμένων βάσει αναφορών σημαίνει ότι και οι δύο μεταβλητές δείχνουν στην ίδια περίπτωση στη μνήμη. Στη Swift, για σύγκριση αναφορών, χρησιμοποιείται ο τελεστής ταυτότητας ===.
Παράδειγμα:
class Person {
var name: String
init(name: String) {
self.name = name
}
}
let personA = Person(name: "Alice")
let personB = personA
let personC = Person(name: "Alice")
print(personA === personB) // true, και οι δύο αναφορές στο ίδιο αντικείμενο
print(personA === personC) // false, διαφορετικά αντικείμενα
Έτσι, για να ελέγξετε αν δύο μεταβλητές δείχνουν στο ίδιο αντικείμενο, χρησιμοποιείτε ===, και όχι ==, που συνήθως ελέγχει την ισότητα περιεχομένου.