2025.03.04

Javaで乱数の生成する

乱数を生成する方法

Javaで、乱数を生成する代表的な方法は2つあります。

Math.random()メソッド

1つ目は、数値を扱うMathクラスのrandom()メソッドです。0.0以上、1.0未満の実数乱数を生成することができます。

メソッドの仕様は以下のとおりです。

Math.randomメソッド

public static double Math.random()
・乱数を返します。

  パラメータ なし

  戻り値     0.0以上、1.0未満の乱数

Randomクラス

2つ目は、Randomクラスです。いろいろな型の乱数を生成することができるメソッドが用意されています。

Randomクラスの仕様は以下のとおりです。

Randomコンストラクタ

Random()
・新規乱数ジェネレータを作成します。
  パラメータ なし
Random( long seed )
・単一のlong型のシードを使って、新しい乱数ジェネレータを作成します。
  パラメータ seed : 乱数を作るための基となるデータ

生成した乱数は、いろいろなデータ型で取得することができます。

Random.nextIntメソッド

public int nextInt()
・この乱数ジェネレータのシーケンスを使って、一様分布のint型の次の擬似乱数値を返します

  パラメータ なし

  戻り値     この乱数ジェネレータのシーケンスを使って生成された、一様分布のint型の次の擬似乱数値
public int nextInt( int bound )
・この乱数ジェネレータのシーケンスを使って、0から指定された値の範囲(0は含むが、
    その指定された値は含まない)で一様分布のint型の擬似乱数値を返します。

  パラメータ bound : 乱数の上限。正の値で指定。

  戻り値     この乱数ジェネレータのシーケンスを使った、0(含む)からbound(含まない)の範囲で一様分布の、
                   int型の次の擬似乱数値

Random.nextLongメソッド

public long nextLong()
・この乱数ジェネレータのシーケンスを使って、一様分布のlong型の次の擬似乱数値を返します。
     nextLongの一般規約では、1つのlong型の値が擬似乱数として生成されて返されます。

  パラメータ なし

  戻り値     この乱数ジェネレータのシーケンスを使って生成された、一様分布のlong型の次の擬似乱数値

Random.nextFloatメソッド

public float nextFloat()
・この乱数ジェネレータのシーケンスを使って、0.0から1.0の範囲で一様分布のfloat型の
    次の擬似乱数値を返します。

  パラメータ なし

  戻り値     この乱数ジェネレータのシーケンスを使って生成された、
                  0.0から1.0の範囲の一様分布のfloat型の次の擬似乱数値

Random.nextDoubleメソッド

public double nextDouble()
・この乱数ジェネレータのシーケンスを使って、0.0から1.0の範囲で一様分布のdouble型の
    次の擬似乱数値を返します。

  パラメータ なし

  戻り値     この乱数ジェネレータのシーケンスを使って生成された、
                  0.0から1.0の範囲の一様分布のdouble型の次の擬似乱数値

Random.nextBooleanメソッド

public boolean nextBoolean()
・この乱数ジェネレータのシーケンスを使って、一様分布のboolean型の次の擬似乱数値を返します。
    nextBooleanの一般規約では、1つのboolean型の値が擬似乱数として生成されて返されます。

  パラメータ なし

  戻り値     この乱数ジェネレータのシーケンスを使って生成された、一様分布のboolean型の次の擬似乱数値

2つの方法の使い分け

手軽に0.0以上で1.0未満の乱数を生成する場合は「Math.random()」を利用し、それ以外の場合は「Randomクラス」を利用するのが良いです。

乱数に関するコンテンツ

乱数」に関係があるコンテンツをまとめています。

関連コンテンツ

Javaのプログラムを作ってみませんか?プログラミングに必要なものの用意から実行までを説明しています。

2020.03.23

Javaの学習に役立つソースコードを多数紹介しています。是非、ご覧ください。

2022.09.10

Swingパッケージを使ってグラフィック表示を行う方法を解説しています。

2020.03.23

画像フォーマット形式・色・大きさ・傾きなどの変更、特定の図形(文字・記号など)を見つけたり、取り出したりする画像処理について詳しく解説。

2015.11.29

繰り返し処理を使ったJavaのソースコードサンプルを紹介しています。

2020.03.23

配列を使うJavaソースコードを多数紹介しています。

2021.05.18

数学に関係するJavaのメソッドやソースコードなどを紹介しています。

2022.10.25

三角形、台形、円などいろいろな図形の面積を計算するプログラムを紹介しています。詳しくは、記事をご覧ください。

2021.05.18

StringクラスとStringBuilderクラスを利用したプログラミングの仕方を紹介しています。

2016.12.16

Javaを使った簡単な応用プログラム(生年月日から年齢を計算プログラムなど)を紹介しています。

2022.07.07

プログラミング、ITに関する用語をまとめています。

2022.10.17

日本で使われてきた伝統文様「和柄」について解説しています。

2022.07.27

プログラミング言語とは?種類や特徴について説明しています。

2022.08.03

乱数の意味と、Math.randomメソッドの使い方をソースコードを使って詳しく解説しています。

2015.12.27

メソッドの定義方法を詳しく解説しています。Javaのサンプルソースコードを使った説明もあります。

2020.03.23

Randomクラスの使い方と、このクラスを使ったJavaのソースコードを掲載しています。

2025.02.04

Javaで扱うデータ型について説明しています。

2020.03.23

「ゆるゆるプログラム」のコンテンツを紹介しています。興味のある方はこの記事をご覧ください。

2020.03.23

広告