Verstehen des Objektvergleichs in der Methode „contains()“ von ArrayList
Die Methode „contains()“ in ArrayList wertet aus, ob ein bestimmtes Objekt in der Liste vorhanden ist. Bei der Bestimmung der Objektgleichheit verwendet ArrayList die Methode equal(), die in der Klasse des Objekts definiert ist.
Stellen Sie sich das folgende Szenario vor: Sie erstellen ein Thing-Objekt mit einem ganzzahligen Wert und fügen es einer ArrayList hinzu. Wenn Sie anschließend ein anderes Dingobjekt mit einem identischen Wert erstellen, erkennt die Methode „contains()“ diese dann als gleichwertig?
Überlegungen zur Implementierung
Für die Methode „contains()“ zu Um true zurückzugeben, muss die Methode equal() innerhalb der Thing-Klasse entsprechend implementiert werden. In diesem Fall vergleicht die Methode equal() korrekt die Wertinstanzvariable zwischen den Objekten und gibt true zurück, wenn sie identisch sind.
Fazit
Die Methode enthält() in ArrayList delegiert den Objektvergleich an die Methode equal(), die in der Klasse des Objekts definiert ist. Durch die Implementierung von equal() zum Vergleich relevanter Instanzvariablen können Sie sicherstellen, dass Objekte in ArrayList-Operationen korrekt als gleich oder nicht identifiziert werden.
Das obige ist der detaillierte Inhalt vonVerwendet die Methode „contains()' von ArrayList Objektgleichheit oder Referenzgleichheit?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!