Rumah >Java >javaTutorial >Mengapa Nombor Rawak Saya di Jawa Nampaknya Sama Setiap Kali?
Memahami Nombor Rawak Menggunakan Benih dalam Java
Di Jawa, benih digunakan untuk memulakan kejadian Rawak dan menjana jujukan nombor pseudorandom . Apabila benih yang sama disediakan, kejadian Rawak menghasilkan urutan nombor yang sama.
Mengapa Nombor Rawak Saya Sama Setiap Masa?
Dalam kod yang disediakan:
double num = generator.nextDouble() * (0.5);
Anda menggunakan benih yang sama untuk setiap panggilan ke randomGenerator, menghasilkan urutan rawak yang sama nombor.
Cara Membaikinya
Untuk menjana jujukan nombor rawak yang berbeza dengan biji:
Contoh:
private Random generator = new Random(); // outside randomGenerator double randomGenerator() { return generator.nextDouble() * (0.5); // inside randomGenerator }
Penjanaan Nombor Rawak Pseudo
Penjana nombor pseudorandom (PRNG) menjana jujukan yang kelihatan rawak tetapi bersifat deterministik dan disemai dengan nilai awal. Apabila benih yang sama digunakan, PRNG menghasilkan urutan yang sama.
Atas ialah kandungan terperinci Mengapa Nombor Rawak Saya di Jawa Nampaknya Sama Setiap Kali?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!