在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

java数组随机数不能重复如何解决

99次阅读
没有评论

共计 1428 个字符,预计需要花费 4 分钟才能阅读完成。

要解决 Java 数组随机数不能重复的问题,可以使用以下方法:

  1. 使用 java.util.Random 类生成随机数,并将生成的随机数存入 Set 集合中。由于 Set 集合不允许重复元素,因此可以保证生成的随机数不重复。然后,将 Set 集合转换为数组。
import java.util.HashSet;
import java.util.Random;
import java.util.Set;

public class RandomArray {public static void main(String[] args) {int[] array = generateRandomArray(10, 1, 100);
        for (int num : array) {System.out.println(num);
        }
    }

    public static int[] generateRandomArray(int length, int min, int max) {if (length > (max - min + 1)) {throw new IllegalArgumentException(" 生成不了指定范围内的不重复随机数!");
        }
        
        Random random = new Random();
        Set<Integer> set = new HashSet<>();
        
        while (set.size() < length) {int randomNum = random.nextInt(max - min + 1) + min;
            set.add(randomNum);
        }
        
        int[] array = new int[length];
        int index = 0;
        for (int num : set) {array[index++] = num;
        }
        
        return array;
    }
}
  1. 另一种方法是使用 Fisher-Yates 算法,该算法通过交换数组元素的位置来生成不重复的随机数。
import java.util.Random;

public class RandomArray {public static void main(String[] args) {int[] array = generateRandomArray(10, 1, 100);
        for (int num : array) {System.out.println(num);
        }
    }

    public static int[] generateRandomArray(int length, int min, int max) {if (length > (max - min + 1)) {throw new IllegalArgumentException(" 生成不了指定范围内的不重复随机数!");
        }
        
        int[] array = new int[length];
        Random random = new Random();
        
        for (int i = 0; i < length; i++) {int randomIndex = random.nextInt(max - min + 1 - i) + i;
            array[i] = randomIndex;
            
            int temp = array[i];
            array[i] = array[randomIndex];
            array[randomIndex] = temp;
        }
        
        for (int i = 0; i < length; i++) {array[i] = array[i] + min;
        }
        
        return array;
    }
}

这两种方法都是通过生成随机数并存入数组中,保证随机数不重复。第一种方法使用了 Set 集合,第二种方法使用了 Fisher-Yates 算法。可以根据具体的需求选择使用哪种方法。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-13发表,共计1428字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 欧美精品成人一区二区在线观看 | 国产成人8x视频网站入口 | 女人被黑人狂躁c到高潮小说 | 337p人体粉嫩胞高清视频 | 精品久久国产字幕高潮 | 啪啪网免费 | 久久有这有精品在线观看 | 欧美人妻精品一区二区三区 | 精品无码一区二区三区爱欲 | 成人区人妻精品一区二区不卡网站 | 日本一级淫片aaaaaa | 色视频免费观看 | 五月桃花网婷婷亚洲综合 | 久久久久99精品成人片直播 | 蜜桃av抽搐高潮一区二区 | 少妇被后进高潮动态图gif | 91正在播放极品白嫩在线观看 | 成人精品一区二区三区校园激情 | 久久久精| 色综合网天天综合色中文男男 | 免费一级a毛片在线 | 成人亚洲精品一区二区 | 亚洲综合国产一区二区三区 | 黄色片aaaa | 国产成人亚洲综合欧美一部 | 国产高清国内精品福利99久久 | 久草在线网 | 四虎免费永久在线播放 | 四虎影永久在线观看网址 | 国产精品va欧美精品 | 亚洲av成人无码网站天堂网久久 | 国精产品一区二区三区有限公司 | 精品一区二区三区无码免费视频 | 国产色一区 | 久久国产精品久久国产精品 | 成人国产欧美精品一区二区 | 天堂资源在线中文 | 国产毛片一区二区三区 | 99久热只有精品视频免费看 | 国产黄 | 色视频免费 |