Is java.util.Random really that random? How can I generate 52! (factorial) possible sequences?

I’ve been using Random (java.util.Random) to shuffle a deck of 52 cards. There are 52! (8.0658175e+67) possibilities. Yet, I’ve found out that the seed for java.util.Random is a long, which is much smaller at 2^64 (1.8446744e+19). From here, I’m suspicious whether java.util.Random is really that random; is it actually capable of generating all 52! possibilities? … Read more