Rumah > Java > javaTutorial > Bagaimanakah Saya Boleh Mengenalpasti Integer Pendua dengan Betul dalam Tatasusunan Java?

Bagaimanakah Saya Boleh Mengenalpasti Integer Pendua dengan Betul dalam Tatasusunan Java?

Mary-Kate Olsen
Lepaskan: 2024-12-07 04:49:10
asal
709 orang telah melayarinya

How Can I Correctly Identify Duplicate Integers in a Java Array?

Java Array, Mencari Pendua

Masalah:
Di Java, tatasusunan integer diberikan, dan matlamatnya adalah untuk mengenal pasti dan melaporkan sebarang unsur pendua dalam tatasusunan. Walau bagaimanapun, pendekatan semasa untuk mengesan pendua menghasilkan hasil yang salah apabila tiada pendua wujud.

Kod Asal:

int[] zipcodelist = // ...

boolean duplicates = false;
for(j = 0; j < zipcodeList.length; j++){
    for(k = 0; k < zipcodeList.length; k++){
        if (zipcodeList[k] == zipcodeList[j]){
            duplicates = true;
        }
    }
}
Salin selepas log masuk

Isu dalam Kod Asal:
Isu timbul apabila tiada pendua dalam tatasusunan. Struktur gelung menetapkan pendua sebagai benar walaupun dalam senario ini kerana gelung dalam menyemak kesamaan antara setiap elemen dan dirinya sendiri. Oleh itu, apabila tiada pendua, pendua akhirnya menjadi benar.

Kod Yang Diperbaiki untuk Mengesan Pendua:
Untuk menangani isu ini, kod boleh diubah suai seperti berikut:

duplicates = false;
for (j = 0; j < zipcodeList.length; j++){
    for (k = j + 1; k < zipcodeList.length; k++){
        if (k != j && zipcodeList[k] == zipcodeList[j]){
            duplicates = true;
        }
    }
}
Salin selepas log masuk

Penjelasan:
Kod yang diubah suai ini termasuk keadaan tambahan (k != j) dalam gelung dalam. Langkah ini memastikan bahawa perbandingan hanya dilakukan antara elemen unik, mengelakkan pemeriksaan pendua setiap elemen dengan elemen itu sendiri. Akibatnya, pendua hanya akan ditetapkan kepada benar apabila pendua tulen ditemui, menghasilkan hasil yang tepat.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengenalpasti Integer Pendua dengan Betul dalam Tatasusunan Java?. 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