Heim > Java > javaLernprogramm > Java-Array-Vergleich: „equals()' vs. „Arrays.equals()' – Was ist der Unterschied?

Java-Array-Vergleich: „equals()' vs. „Arrays.equals()' – Was ist der Unterschied?

Patricia Arquette
Freigeben: 2024-12-28 16:51:12
Original
238 Leute haben es durchsucht

Java Array Comparison:  `equals()` vs. `Arrays.equals()` - What's the Difference?

Vergleich von Arrays in Java: equal vs. Arrays.equals

Beim Vergleich von Array-Objekten in Java ist es wichtig, die subtilen Unterschiede zwischen equal zu verstehen und Arrays.equals.

equals Operator

Der Gleichheitsoperator in Java vergleicht, ob zwei Referenzen auf dasselbe Objekt im Speicher verweisen. Bei der Anwendung auf Arrays bedeutet dies, dass geprüft wird, ob die beiden Array-Referenzen auf dieselbe Array-Instanz verweisen.

Object[] array1, array2;
array1.equals(array2);
Nach dem Login kopieren

In diesem Fall lautet das Ergebnis, wenn Array1 und Array2 auf dasselbe Array-Objekt verweisen WAHR. Andernfalls ist es falsch.

Arrays.equals-Methode

Im Gegensatz dazu vergleicht die Arrays.equals-Methode den Inhalt zweier Arrays. Es prüft, ob die Arrays die gleiche Anzahl an Elementen haben und ob die entsprechenden Elemente gleich sind.

Arrays.equals(array1, array2);
Nach dem Login kopieren

Wenn Array1 und Array2 den gleichen Inhalt haben, ist das Ergebnis wahr. Andernfalls ist es falsch.

Hauptunterschiede

Der Hauptunterschied zwischen equal und Arrays.equals besteht darin, dass equal Referenzen vergleicht, während Arrays.equals Inhalte vergleicht.

Beispiele

Bedenken Sie Folgendes Beispiele:

Object[] array1 = new int[] { 1, 2, 3 };
Object[] array2 = new int[] { 1, 2, 3 };
Nach dem Login kopieren

In diesem Fall ist array1.equals(array2) falsch, da array1 und array2 zwei verschiedene Array-Objekte sind. Arrays.equals(array1, array2) ist jedoch wahr, da die Inhalte der Arrays gleich sind.

Object[] array1 = new int[] { 1, 2, 3 };
Object[] array2 = array1;
Nach dem Login kopieren

In diesem Fall sind array1.equals(array2) und Arrays.equals(array1, array2 ) sind beide wahr, da Array1 und Array2 auf dasselbe Array-Objekt verweisen.

Das obige ist der detaillierte Inhalt vonJava-Array-Vergleich: „equals()' vs. „Arrays.equals()' – Was ist der Unterschied?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage