Javaで乱数を作成する方法を教えてください

Javaでは、乱数を生成する以下のような方法があります。

  1. Math.random()メソッドは0.0から1.0までの乱数を生成します。数値を掛けてから型変換すれば、整数としての乱数を取得できます。
double random = Math.random(); // 生成0.0到1.0之间的随机数
int randomInt = (int)(random * 10); // 生成0到9之间的随机整数
  1. Randomクラス:Javaが提供するRandomクラスは多様な乱数生成メソッドを提供しています。Randomオブジェクトを作成し、そのnextXXX()メソッドを呼び出すことで、異なる型の乱数を生成できます。
Random random = new Random();
int randomInt = random.nextInt(); // 生成随机整数
double randomDouble = random.nextDouble(); // 生成0.0到1.0之间的随机数
boolean randomBoolean = random.nextBoolean(); // 生成随机布尔值
  1. スレッドローカル変数としてランダム数値を生成するThreadLocalRandomクラスはJava 7から導入され、ランダムクラスと比較して、マルチスレッド環境において性能が向上しています。
int randomInt = ThreadLocalRandom.current().nextInt(); // 生成随机整数
double randomDouble = ThreadLocalRandom.current().nextDouble(); // 生成0.0到1.0之间的随机数

これらのメソッドで生成される乱数は、確定的なアルゴリズムによって計算される擬似乱数であり、シード値が同じ場合、同じ乱数列を生成する。シード値を変えることで、乱数列を変えることができる。

bannerAds