Rumah > Java > javaTutorial > Perbandingan Tatasusunan Java: `equals()` vs. `Arrays.equals()` - Apakah Perbezaannya?

Perbandingan Tatasusunan Java: `equals()` vs. `Arrays.equals()` - Apakah Perbezaannya?

Patricia Arquette
Lepaskan: 2024-12-28 16:51:12
asal
257 orang telah melayarinya

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

Membandingkan Tatasusunan dalam Java: equals vs Arrays.equals

Apabila membandingkan objek tatasusunan dalam Java, adalah penting untuk memahami perbezaan halus antara yang sama dan Arrays.equals.

equals Operator

Operator yang sama dalam Java membandingkan sama ada dua rujukan merujuk kepada objek yang sama dalam ingatan. Apabila digunakan pada tatasusunan, ini bermakna ia menyemak sama ada dua rujukan tatasusunan menunjuk kepada contoh tatasusunan yang sama.

Object[] array1, array2;
array1.equals(array2);
Salin selepas log masuk

Dalam kes ini, jika tatasusunan1 dan tatasusunan2 merujuk kepada objek tatasusunan yang sama, hasilnya akan benar. Jika tidak, ia akan menjadi palsu.

Kaedah Arrays.equals

Sebaliknya, kaedah Arrays.equals membandingkan kandungan dua tatasusunan. Ia menyemak sama ada tatasusunan mempunyai bilangan elemen yang sama dan jika elemen yang sepadan adalah sama.

Arrays.equals(array1, array2);
Salin selepas log masuk

Jika tatasusunan1 dan tatasusunan2 mempunyai kandungan yang sama, hasilnya akan menjadi benar. Jika tidak, ia akan menjadi palsu.

Perbezaan Utama

Perbezaan utama antara equals dan Arrays.equals ialah sama dengan membandingkan rujukan manakala Arrays.equals membandingkan kandungan.

Contoh

Pertimbangkan contoh berikut:

Object[] array1 = new int[] { 1, 2, 3 };
Object[] array2 = new int[] { 1, 2, 3 };
Salin selepas log masuk

Dalam kes ini, array1.equals(array2) akan menjadi palsu kerana array1 dan array2 ialah dua objek tatasusunan yang berbeza. Walau bagaimanapun, Arrays.equals(array1, array2) akan menjadi benar kerana kandungan array adalah sama.

Object[] array1 = new int[] { 1, 2, 3 };
Object[] array2 = array1;
Salin selepas log masuk

Dalam kes ini, array1.equals(array2) dan Arrays.equals(array1, array2 ) kedua-duanya akan menjadi benar kerana tatasusunan1 dan tatasusunan2 merujuk kepada objek tatasusunan yang sama.

Atas ialah kandungan terperinci Perbandingan Tatasusunan Java: `equals()` vs. `Arrays.equals()` - Apakah Perbezaannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan