Rumah > Java > JavaAsas > 生成不重复随机数 java

生成不重复随机数 java

angryTom
Lepaskan: 2019-11-11 13:40:47
asal
2963 orang telah melayarinya

生成不重复随机数 java

生成不重复随机数 java

java生成随机数可以使用Math类中的方法。不随机可以使用List进行判断存储。(推荐教程:java教程 

1 . 调用java.lang下面Math类中的random()方法产生随机数

新建一个文件后缀名为java的文件,文件名取为MyRandom,该类中编写如下的代码:

public class MyRandom {
    public static void main(String[] args) {
        int radom = (int)(Math.random()*10);
        System.out.println(radom);
    }
}
Salin selepas log masuk

其中Math.random() //产生0~1之间的一个随机小数。

产生一个0~9之间的整数为:(int)(Math.random()*10);

产生一个1~10之间的整数则可以写着:(int)(Math.random()*10 + 1);

以此类推:产生一个0~n之间的数就应写作:Math.random()*n;

例如:生成一个int类型的数组,长度为50的,并向其中随即插入0-50之间的数,并且不能重复。

2. 用List的contains方法进行重复判断

public class MyRandom {
public static void main(String[] args) {
    int[] intRandom = new int[50];
    List mylist = new ArrayList(); //生成数据集,用来保存随即生成数,并用于判断
    Random rd = new Random();
    while(mylist.size() < 50) {
        int num = rd.nextInt(51);
        if(!mylist.contains(num)) {
        mylist.add(num); //往集合里面添加数据。
    }
    }
    for(int i = 0;i <mylist.size();i++) {
        intRandom[i] = (Integer)(mylist.get(i));
    }
}
}
Salin selepas log masuk

Atas ialah kandungan terperinci 生成不重复随机数 java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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