如何创建具有偶然性的随机布尔值?

时间:2016-10-14 04:58:26

标签: java math libgdx

我看到了libgdx MathUtils.randomBoolean(chances),我想这会对我有所帮助,但我不确定。

MathUtils.randomBoolean(10); // I'm not sure if this will give 10% chance?

2 个答案:

答案 0 :(得分:4)

MathUtils.randomBoolean(float chance)给出true参数给出的概率。但参数chance可以在0 - 1之间取值,这意味着例如0.1会给10%0.1}返回true的概率。< / p>

您的示例 - 10 - 总是会true,因为它比1更大。

答案 1 :(得分:3)

关于MathUtils

,请查看LibGDX Javadocs
  

<强> randomBoolean

     

public static boolean randomBoolean(float chance)

     

如果0和1之间的随机值小于指定值,则返回true。

这意味着如果指定一个数字(作为参数传递),如果随机生成的数字(介于0和1之间)小于传递的chance,则该方法将返回true。在这种情况下,它将是:

MathUtils.randomBoolean(0.1);

这是因为0.1是10%,或10/100。因此,0到1之间的随机数(如果小于0.1)将导致该方法返回true。

您之前的代码始终返回true ,因为0到1之间的数字始终小于10.