Rumah  >  Artikel  >  Java  >  Bagaimana untuk Membandingkan Tatasusunan Integer dengan Tepat dalam Java: Saiz Tetap vs. Bersaiz Dinamik?

Bagaimana untuk Membandingkan Tatasusunan Integer dengan Tepat dalam Java: Saiz Tetap vs. Bersaiz Dinamik?

Patricia Arquette
Patricia Arquetteasal
2024-10-31 09:29:01472semak imbas

How to Accurately Compare Integer Arrays in Java: Fixed Size vs. Dynamically Sized?

Membandingkan Tatasusunan Integer dalam Java

Apabila membandingkan tatasusunan dalam Java, memastikan kesetaraan mereka adalah penting. Membandingkan dua tatasusunan integer menimbulkan cabaran khusus, terutamanya apabila satu tatasusunan mengandungi nilai yang dipratentukan dan yang lain diperoleh daripada fail input.

Memahami Isu

Kod yang disediakan cuba membandingkan dua tatasusunan, tatasusunan1 dan tatasusunan2. Array1 bersaiz tetap, manakala array2 bersaiz dinamik berdasarkan nombor pertama yang dibaca daripada fail input. Tujuannya adalah untuk menentukan sama ada kedua-dua tatasusunan adalah sama panjang dan kandungan.

Menangani Isu

Walau bagaimanapun, logik kod gagal dalam menentukan kesamaan dengan tepat. Ia menyemak sama ada setiap elemen dalam tatasusunan2 sepadan dengan mana-mana elemen dalam tatasusunan1 dan masing-masing mencetak "benar" atau "palsu" berdasarkan satu padanan atau tidak sepadan. Pendekatan ini tidak mencukupi untuk membandingkan tatasusunan secara keseluruhan.

Penyelesaian Optimum

Untuk perbandingan yang komprehensif, penyelesaian yang lebih mudah dan cekap ialah menggunakan terbina dalam Kaedah Arrays.equals() dalam Java:

<code class="java">boolean areEqual = Arrays.equals(array1, array2);</code>

Kaedah ini menentukan sama ada dua tatasusunan mempunyai panjang yang sama dan jika semua elemen yang sepadan adalah sama.

Nota Isih

Adalah penting untuk ambil perhatian bahawa tatasusunan dianggap sama menggunakan kaedah Arrays.equals(), ia juga mesti diisih. JavaDoc untuk kaedah tersebut menyatakan bahawa, "Dua tatasusunan dianggap sama jika kedua-dua tatasusunan mengandungi bilangan elemen yang sama, dan semua pasangan elemen yang sepadan dalam dua tatasusunan adalah sama."

Oleh itu, jika tatasusunan adalah tidak diisih secara semula jadi, anda perlu mengisihnya sebelum membandingkannya untuk kesamarataan.

Atas ialah kandungan terperinci Bagaimana untuk Membandingkan Tatasusunan Integer dengan Tepat dalam Java: Saiz Tetap vs. Bersaiz Dinamik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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