Junior — Middle
Πώς μπορούμε να προσδιορίσουμε αν δύο αντικείμενα αναφέρονται στην ίδια περίπτωση στη μνήμη;
sobes.tech AI
Απάντηση από AI
Στο Android (Java/Kotlin), για να ελέγξετε αν δύο αντικείμενα αναφέρονται στην ίδια παρουσία στη μνήμη, χρησιμοποιείται ο τελεστής == (στο Kotlin) ή ο τελεστής == στη Java για έλεγχο αναφοράς (στη Java, για έλεγχο αναφοράς χρησιμοποιείται το ==, και για σύγκριση περιεχομένου η μέθοδος equals()).
Παράδειγμα σε Kotlin:
val obj1 = SomeClass()
val obj2 = obj1
val obj3 = SomeClass()
println(obj1 == obj2) // true, επειδή οι αναφορές είναι ίδιες
println(obj1 == obj3) // false, διαφορετικές παρουσίες
Στη Java:
SomeClass obj1 = new SomeClass();
SomeClass obj2 = obj1;
SomeClass obj3 = new SomeClass();
System.out.println(obj1 == obj2); // true
System.out.println(obj1 == obj3); // false
Επομένως, ο τελεστής == συγκρίνει τις αναφορές, και η μέθοδος equals() συγκρίνει το περιεχόμενο των αντικειμένων.