您当前的位置:首页 > 圈子

java随机数不重复出现

2024-10-23 21:52:57 作者:石家庄人才网

石家庄人才网今天给大家分享《java随机数不重复出现》,石家庄人才网小编对内容进行了深度展开编辑,希望通过本文能为您带来解惑。

在Java编程中,经常需要生成随机数,但有时需要保证生成的随机数不重复。本文将介绍几种实现Java随机数不重复出现的常用方法。

方法一:使用Set集合

Set集合的特点是不允许存储重复元素,因此可以利用这一特性生成不重复的随机数。具体步骤如下:

  1. 创建一个HashSet对象,用于存储生成的随机数。
  2. 使用循环生成随机数,并将生成的随机数添加到HashSet中。
  3. 判断HashSet的大小是否等于所需的随机数个数,如果等于则说明已经生成完毕,否则继续生成。

方法二:使用List集合

除了使用Set集合,还可以使用List集合来实现。具体步骤如下:

  1. 创建一个ArrayList对象,用于存储生成的随机数。
  2. 使用循环生成随机数,并将生成的随机数添加到ArrayList中。
  3. 使用Collections.shuffle()方法对ArrayList进行随机排序。
  4. 取ArrayList中前N个元素,即为不重复的随机数。

方法三:使用数组

如果需要生成的随机数个数较少,可以使用数组来实现。具体步骤如下:

  1. 创建一个数组,数组长度为所需的随机数个数。
  2. 使用循环生成随机数,并将生成的随机数存储到数组中。
  3. 在每次生成随机数后,判断该随机数是否已经在数组中出现过,如果出现过则重新生成。

示例代码

以下是用Set集合实现Java随机数不重复出现的示例代码:

import java.util.HashSet;import java.util.Random;import java.util.Set;public class RandomNumberGenerator {    public static void main(String[] args) {        // 生成10个不重复的随机数        int count = 10;        Set<Integer> randomNumbers = generateRandomNumbers(count);        // 打印生成的随机数        System.out.println("生成的随机数:");        for (Integer randomNumber : randomNumbers) {            System.out.print(randomNumber + " ");        }    }    // 生成指定个数的不重复随机数    public static Set<Integer> generateRandomNumbers(int count) {        Set<Integer> randomNumbers = new HashSet<>();        Random random = new Random();

java随机数不重复出现

// 生成随机数,直到Set集合的大小等于指定个数 while (randomNumbers.size() < count) { randomNumbers.add(random.nextInt(100)); // 生成0-99之间的随机数 } return randomNumbers; }}

以上代码将生成10个0-99之间的不重复随机数,并将结果打印到控制台。

石家庄人才网小编对《java随机数不重复出现》内容分享到这里,如果有相关疑问请在本站留言。

版权声明:《java随机数不重复出现》来自【石家庄人才网】收集整理于网络,不代表本站立场,所有图片文章版权属于原作者,如有侵略,联系删除。
https://www.ymil.cn/quanzi/23131.html