我遇到随机真或假问题。 它每次只根据代码判断真或假。 有人有办法让它真正随机吗?
int times;
for (left = 0; left < times; left++) {
boolean result = (Math.random() < 0.5);
if(result = true){
System.out.println("Heads");
}
else if(result = false){
System.out.println("Tails");
}
System.out.println(result);
}
最佳答案
if(result = true)
并没有像你想象的那样做。它实际上将 true
分配给 result
,然后将其用作 if
语句的条件。因此,条件始终为真。
使用 ==
代替,或者,因为它已经是一个 boolean 值,所以只需使用(适本地重命名变量,从过于通用的result
):
boolean FiftyPercentChance = (Math.random() < 0.5);
if (FiftyPercentChance) ...
关于java - 为什么这总是正确的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33324926/