Return True or False Randomly

2019-01-31 03:15发布

问题:

I need to create a Java method to return true or false randomly. How can I do this?

回答1:

The class java.util.Random already has this functionality:

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

However, it's not efficient to always create a new Random instance each time you need a random boolean. Instead, create a attribute of type Random in your class that needs the random boolean, then use that instance for each new random booleans:

public class YourClass {

    /* Oher stuff here */

    private Random random;

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

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

    /* More stuff here */

}


回答2:

(Math.random() < 0.5) returns true or false randomly



回答3:

This should do:

public boolean randomBoolean(){
    return Math.random() < 0.5;
}


回答4:

You can do as following code,

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());
        }
    }
}

Hope this would help you, Thanks.



回答5:

You will get it by this:

return Math.random() < 0.5;