答案 1
根据您处理问题的方式,如下所示:
public int gen() {
Random r = new Random( System.currentTimeMillis() );
return 10000 + r.nextInt(20000);
}
或者类似的东西(你可能想要该方法的Random对象的实例化,但为了简单起见,我只是把它放在这里):
public int gen() {
Random r = new Random( System.currentTimeMillis() );
return ((1 + r.nextInt(2)) * 10000 + r.nextInt(10000));
}
这个想法是1 + nextInt(2)应该总是给出1或2。然后,将其乘以 10000 以满足您的要求,然后添加一个介于 [0..9999] 之间的数字。
下面是一些示例输出:
14499
12713
14192
13381
14501
24695
18802
25942
21558
26100
29350
23976
29045
16170
23200
23098
20465
23284
16035
18628
答案 2
推荐
-
-
随机生成的 UUID 具有重复项 我正在使用以下函数生成UUID 在生产环境中,我们有50多个服务器(应用程序服务器 - 每个服务器都是一个独立的JVM),对于落在这些服务器中的请求,作为第一步,我们生成一个UUID,它基本
-
有没有软件可以在Java中测试序列的非随机性? 我在Java中寻找能够找到字节序列的非随机属性的程序或库。当给定一个巨大的文件时,如果数据显示任何规律性,就会运行一些统计测试和报告。 我知道三个这样的程序,但不是Java。我尝试了
-
如何在数组中生成加起来等于定义的总数的随机数? 我需要在Java中随机生成一个具有7个插槽的数组。所有这些槽的值必须至少为 1,但组合在一起,总值必须为另一个定义的数字。它们还需要是整数值,没有1.5或0.9816465684646数字。例: 我希望
-
Java随机生成器是如何工作的? 我编写了模拟掷骰子的程序 我想知道是否有办法“预测”下一个生成的数字,以及JVM如何确定下一个要生成的数字? 我的代码输出数字在任何JVM和操作系统上都会接近真正的随机数吗?