java - 无需替换的随机数生成器?

标签 java random

我尝试编写一个随机数生成器,它不会多次生成相同的随机数。但我无法也无法弄清楚为什么。我的代码现在是这样的:

public void printNS(){

    System.out.print("Numeros Numeros: ");

    for(int i=0; i < 5 ; i++){
        System.out.print( (int)(Math.random()*50) + ",");
    }

    System.out.print("; Numeros Stars: ");

    for(int i=0; i < 2 ; i++){
        System.out.print( (int)(Math.random()*12)+ ",");    
    }

}

最佳答案

在 java 8 中你可以做以下事情

 int[] rand = new Random().ints(start, end).distinct().limit(number).toArray();

有关更多详细信息/选项,请参阅 doc

在 Java 8 之前,您可以使用 Set。生成随机数,直到您设置的大小小于所需的随机数数

关于java - 无需替换的随机数生成器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43261147/

相关文章:

python - 比较元素并返回大于随机数的值作为 true

c++ - 什么时候使用 std::random_device?

java - Java 随机生成器的最佳实践

java - Jenkins:如何通过 "source script"为 ant 任务设置环境变量

java - 下面的Singleton在多线程环境下会不安全吗

java - 刷新 Grails applicationContext

c++ - Mingw编译错误使用

javascript - 生成一个简短的伪随机可验证字母数字代码

java - 加入ArrayList的有效方法

java - @Autowired bean 在 Controller 上与@Valid 一起工作,但在 CRUD 存储库上失败