Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Menjana Nombor Rawak Berbeza dalam Kaedah Statik Menggunakan C#?

Bagaimanakah Saya Boleh Menjana Nombor Rawak Berbeza dalam Kaedah Statik Menggunakan C#?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-06 03:29:39150semak imbas

How Can I Generate Distinct Random Numbers in a Static Method Using C#?

Menjana Nilai Rawak Berbeza dengan Membenihkan Kelas Rawak

Cabaran yang anda hadapi apabila menghadapi nilai rawak pendua dalam kaedah statik ialah Rawak kelas lalai kepada benih 0. Akibatnya, panggilan seterusnya ke Next() dalam kaedah akan menghasilkan yang sama jujukan nilai.

Untuk menyelesaikan isu ini, adalah penting untuk menyemai kelas Rawak secara eksplisit dengan nilai unik. Satu pendekatan yang berkesan melibatkan penggunaan kaedah GetHashCode() kelas Panduan untuk menjana benih rawak:

Random rand = new Random(Guid.NewGuid().GetHashCode());

Kaedah ini menjamin benih rawak tinggi yang berubah setiap kali ia dipanggil. Akibatnya, kelas Rawak akan menjana nilai yang berbeza dalam gelung, menghapuskan isu nombor rawak berulang.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjana Nombor Rawak Berbeza dalam Kaedah Statik Menggunakan C#?. 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