java生成五位随机数并且重复概率低于十万分之一
时间: 2023-07-18 12:29:31 浏览: 178
生成不重复随机数的算法
Java中可以使用SecureRandom类来生成随机数,该类提供了比Random类更高的安全性和随机性,可以满足你的需求。同时,为了保证生成的随机数重复概率低于十万分之一,可以使用一些技巧,比如使用UUID的hashCode方法,将生成的随机数与当前时间戳相加等。具体代码如下:
```java
import java.security.SecureRandom;
import java.util.HashSet;
import java.util.Set;
import java.util.UUID;
public class RandomGenerator {
public static void main(String[] args) {
Set<Integer> set = new HashSet<>();
SecureRandom random = new SecureRandom();
while (set.size() < 5) {
// 生成随机数的方法
int number = Math.abs(UUID.randomUUID().hashCode() + (int) System.currentTimeMillis()) % 100000;
set.add(number);
}
System.out.println(set);
}
}
```
上面的代码使用了UUID的hashCode方法和当前时间戳相加来生成随机数,然后取模100000,保证生成的随机数小于100000。由于SecureRandom提供了更高的安全性和随机性,生成的随机数重复的概率非常小,可以满足你的需求。
阅读全文