Kaedah penjanaan nombor rawak yang biasa digunakan di Java termasuk kelas Rawak dan kaedah Math.random(), tetapi untuk program berbilang benang, keselamatan benang adalah sangat penting. Oleh itu, dalam persekitaran berbilang benang, menggunakan kelas ThreadLocalRandom untuk penjanaan nombor rawak adalah pilihan yang lebih sesuai.
ThreadLocalRandom ialah ciri baharu yang diperkenalkan dalam Java 7 yang menyediakan penjana nombor rawak yang dilokalkan benang. Dalam persekitaran berbilang benang, setiap urutan akan mencipta contoh ThreadLocalRandom sendiri, yang mengelakkan isu persaingan benang dan dengan itu meningkatkan prestasi serentak program.
Sangat mudah untuk menggunakan ThreadLocalRandom untuk menjana nombor rawak, cuma hubungi kaedah nextInt yang disediakannya. Terdapat dua versi terlebih muatan kaedah ini:
Selain itu, ThreadLocalRandom menyediakan jenis kaedah penjanaan nombor rawak lain: nextLong, nextFloat dan nextBoolean, dsb. Penggunaan kaedah ini adalah serupa dengan nextInt.
Berikut ialah contoh kod yang menggunakan ThreadLocalRandom untuk menjana nombor rawak:
import java.util.concurrent.ThreadLocalRandom; public class RandomDemo { public static void main(String[] args) { // 生成一个范围在0-99的随机整数 int randomNum = ThreadLocalRandom.current().nextInt(100); System.out.println("随机数是:" + randomNum); } }
Dalam output kita dapat melihat bahawa nombor rawak adalah berbeza setiap kali kita menjalankan program. Ini juga mengesahkan keselamatan benang dan kebolehpercayaan penjana nombor rawak ThreadLocalRandom.
Ringkasnya, dalam persekitaran berbilang benang Java, menggunakan ThreadLocalRandom adalah lebih selamat, lebih cekap dan lebih mudah daripada menggunakan kelas Rawak. Oleh itu, apabila menulis program berbilang benang, anda harus memberi keutamaan untuk menggunakan ThreadLocalRandom untuk menjana nombor rawak.
Atas ialah kandungan terperinci Cara menggunakan fungsi ThreadLocalRandom untuk menjana nombor rawak dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!