随机返回正确或错误

Bis*_*han 62 java random boolean

我需要创建一个返回或随机的Java方法.我怎样才能做到这一点?truefalse

buc*_*buc 109

该类java.util.Random已具有此功能:

public boolean getRandomBoolean() {
    Random random = new Random();
    return random.nextBoolean();
}
Run Code Online (Sandbox Code Playgroud)

但是,Random每次需要随机布尔值时始终创建新实例效率不高.相反,Random在类中创建一个需要随机布尔值的类型属性,然后对每个新的随机布尔值使用该实例:

public class YourClass {

    /* Oher stuff here */

    private Random random;

    public YourClass() {
        // ...
        random = new Random();
    }

    public boolean getRandomBoolean() {
        return random.nextBoolean();
    }

    /* More stuff here */

}
Run Code Online (Sandbox Code Playgroud)


Hac*_*chi 58

(Math.random() < 0.5) 随机返回true或false


Mic*_*rdt 15

这应该做:

public boolean randomBoolean(){
    return Math.random() < 0.5;
}
Run Code Online (Sandbox Code Playgroud)


Aha*_*med 5

您可以执行以下代码,

public class RandomBoolean {
    Random random = new Random();
    public boolean getBoolean() {
        return random.nextBoolean();
    }
    public static void main(String[] args) {
        RandomBoolean randomBoolean = new RandomBoolean();
        for (int i = 0; i < 10; i++) {
            System.out.println(randomBoolean.getBoolean());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

希望这会对你有所帮助,谢谢.

  • 这有点多余。`randomBoolean`可以只是`new Random()`,而不是`getBoolean()`具有`nextBoolean()`。上面的代码只是添加了无意义的类包装。 (2认同)