我们可以在java中使用nextInt安全地实现nextBoolean吗?
例如如下,
public static boolean nextBoolean(Random random) {
return random.nextInt(2) == 0;
}
是的,这是一种有效的方法,因为
nextInt(2)
在 [0, 2)
范围内生成均匀分布的伪随机整数值。
Random#nextBoolean
的文档指出:
方法由类nextBoolean
实现,如下所示:Random
public boolean nextBoolean() { return next(1) != 0; }
生成一个随机整数,即
1
或 0
,并将其与 0
进行比较。