61.Android开发:随机生成m个[0, n)之间的不重复随机数

场景

需要随机生成m[0, n)之间的不重复随机数;

解决方案

count即是上面的m
endNum即是上面的n

    /**
     * 生成一个startNum 到 endNum之间的随机数(不包含endNum的随机数)
     * @param startNum
     * @param endNum
     * @return
     */
    public static ArrayList getRandomNum(int count, int endNum){

        Random random = new Random();

        ArrayList arrayNum = new ArrayList<>();
        int randomValue;
        while(arrayNum.size() < count){
            randomValue = random.nextInt(endNum);
            if(!arrayNum.contains(randomValue)){
                arrayNum.add(randomValue);
            }
        }
        return arrayNum;
    }

你可能感兴趣的:(61.Android开发:随机生成m个[0, n)之间的不重复随机数)