zoukankan      html  css  js  c++  java
  • java如何在一个范围内产生多个不等的随机数

    import java.util.Random;

    //随机产生0-max之间num个不重复的整数

    public class 产生多个不同随机数 {
    private static int num,max;
    private static int i;
    private static int []in;
    产生多个不同随机数(int num,int max){
    this.num=num;
    this.max=max;
    in=new int[num];
    }



    // 产生一个0-max之间的随机数
    private void ra(){
    in[i]=new Random().nextInt(max);}



    // 判定之前是否产生过相同随机数
    private boolean exist(){
    boolean y=false;
    for(int j=0;j<i;j++){
    if(in[i]==in[j]){y=true;}
    }
    return y;
    }

      //结果
    public int[] UnequalRandom(){
    for(i=0;i<num;i++){
    ra();
    if(exist()){i--;}   //如果之前已产生此数,则重新生成X[i]
    }
    return in;
    }




    }

  • 相关阅读:
    (QR14)带权的DAG节点排序
    数字组合
    最长连续不重复子序列
    树状数组
    归并排序
    差分
    前缀和
    64位整数乘法
    MySQL8 常用指令
    离线及实时实操架构
  • 原文地址:https://www.cnblogs.com/lxoy/p/4903028.html
Copyright © 2011-2022 走看看