117.info
人生若只如初见

java取不重复随机数的方法是什么

在Java中,可以使用Random类和HashSet来生成不重复的随机数。具体步骤如下:

  1. 导入Random类和HashSet类:
import java.util.Random;
import java.util.HashSet;
  1. 创建Random对象和HashSet对象:
Random random = new Random();
HashSet set = new HashSet<>();
  1. 使用while循环生成随机数并添加到HashSet中,直到HashSet的大小等于所需的不重复随机数个数:
while(set.size() < desiredSize) {
int randomNumber = random.nextInt(maxValue);
set.add(randomNumber);
}
  1. 将HashSet转换为数组或列表(可选):
Integer[] randomNumbersArray = set.toArray(new Integer[0]);
List randomNumbersList = new ArrayList<>(set);

完整示例代码如下:

import java.util.Random;
import java.util.HashSet;
public class RandomNumberGenerator {
public static void main(String[] args) {
int desiredSize = 10; // 生成的随机数个数
int maxValue = https://www.yisu.com/ask/100; // 随机数的最大值> set = new HashSet<>();
while(set.size() < desiredSize) {
int randomNumber = random.nextInt(maxValue);
set.add(randomNumber);
}
Integer[] randomNumbersArray = set.toArray(new Integer[0]);
System.out.println("随机数数组:");
for(int i = 0; i < randomNumbersArray.length; i++) {
System.out.println(randomNumbersArray[i]);
}
}
}

运行以上代码,会生成10个不重复的随机数并打印出来。注意,如果所需的不重复随机数个数大于最大值,可能会陷入无限循环,因此需要设置合适的最大值或增加循环条件的控制。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe76dAzsLBgRWBVU.html

推荐文章

  • Java释放库失败如何解决

    在Java中,当调用本地库(Native Library)失败时,可能是由于以下几个原因导致的: 本地库文件没被正确加载:确保本地库文件(通常是.dll文件或.so文件)存在于...

  • java死锁为什么会产生

    Java死锁是由于多个线程同时持有一些资源,并且每个线程都在等待其他线程释放它们所持有的资源,导致所有线程都无法继续执行的情况。产生死锁的原因通常是以下几...

  • java进程内存一直没释放怎么办

    Java进程内存一直没有释放有几个可能的原因和对应的解决方法: 内存泄漏:代码中存在内存泄漏,导致内存无法被垃圾回收器释放。可以通过检查代码,查找是否有未使...

  • java程序cpu占用过高的原因是什么

    Java程序CPU占用过高的原因可能有多种: 代码问题:Java程序中可能存在大量的循环、递归或者重复计算等操作,导致程序运行时消耗大量的CPU资源。 数据处理问题:...

  • java如何生成一定范围的随机数

    在Java中,可以使用java.util.Random类来生成一定范围的随机数。下面是一种常用的方法: 创建一个Random对象: Random random = new Random(); 使用nextInt()方法...

  • kubernetes和docker的区别有哪些

    Kubernetes和Docker是两个不同的技术,各自有着不同的功能和用途。以下是它们之间的一些主要区别: 虚拟化层级:Docker是一种容器化平台,它在操作系统级别提供了...

  • Java如何使用Graphics画图

    在Java中,可以使用Graphics类来画图。下面是一个简单的例子,展示了如何使用Graphics类来画一个简单的圆形:
    import java.awt.*;
    import javax.swing...

  • oracle中sqlplus怎么使用

    SQLPlus是Oracle数据库的命令行工具,用于执行SQL语句和PL/SQL代码。以下是使用SQLPlus的基本步骤: 打开命令行窗口或终端。 输入以下命令连接到Oracle数据库: ...