Search code examples
javarandombigintegerlargenumber

Generating very large random numbers java


How can we generate very large random number in java? I am talking something like 10000 digits? I know we have to use BigInteger but how can we do this? What is the most efficent way of doing something like this? Please provide a small example. Thank you.


Solution

  • Well, one way is to go to Random.org and download a one of the binary random files. The files are generated from atmospheric noise, so it's very random. I used it for Zobrist keys in my chess engine.

    Alternatively you could go

    BigInteger b = new BigInteger(256, new Random());
    

    which will give you what you want. In this example, a BigInteger consisting of 256 bits.