处理项目,试图找到一种方法来生成0到1之间的随机小数,包括0和1。制作一个多线程项目,增加和减少(int)数字。
到目前为止,我已经声明了一个私有的int号,初始化为0,也是一个随机生成器。
我希望让它工作的方法是在0和1之间得到一个随机小数(I.E. 0.564184)并将其添加到数字中。
程序设计的方法是检查数字是否小于1,如果是,则为其添加一个随机小数,重新运行检查直到它高于1或下一个数字将使其高于1
我看到了一个例子 Java random number between 0 and 0.06 但是,当我将它附加并修改为:
while(number < max)
{
double increase = random.nextInt(2);
increase = increase / 10.0;
number = (int) (number + increase);
System.out.println(number);
}
程序连续运行只打印出0。我确实认为这是由于在打印前添加数字时转换为int。
当我使用
时,我的线程正常工作
number = number - random.nextInt(1) + 1;
System.out.println(number);
现在我卡住了,看着不同的导游,我想在我看的时候应该寻求帮助。提前谢谢。
答案 0 :(得分:2)
如果我理解了您的问题,您可以简单地使用Random.nextDouble()
从此随机数生成器的序列中返回下一个伪随机数,在 id name surname id_product
1 a a 1
2 b b 1
4 e e 9
和 str_replace(array("\r", "\n"), ' ', $textareavalue);
之间均匀分布的双值。 类似的东西,
0.0
如果你想让半场和半场保持不变,那么
会更有效率1.0
答案 1 :(得分:1)
Ints不能包含小数值。将变量更改为Float或Double将解决您的问题。