Apache Commons logo Apache Commons RNG

Apache Commons RNG: Random Numbers Generators

Commons RNG provides implementations of pseudo-random numbers generators that are either faster or of higher quality (and sometimes both) than java.util.Random.

The "simple" module contains factory methods for easy instantiation of the generation algorithms implemented in the "commons-rng-core" module.

Example:

import org.apache.commons.rng.UniformRandomProvider;
import org.apache.commons.rng.simple.RandomSource;

public class Dice {
    private final UniformRandomProvider rng = RandomSource.XO_RO_SHI_RO_128_PP.create();

    public int roll() {
        return 1 + rng.nextInt(6);
    }
}

Browse the Javadoc for more information.