Javaでの乱数の記述の仕方について
乱数の表記表には複数種類存在する。
1.Random関数を用いた記述
Randomクラスは、疑似乱数を生成するためのクラスである。戻り値はint型であり、乱数のように見えるが、実際には一定の規則で生成されている数字。
Randomクラスを使用するにはjava.util.Random
をimportする必要がある。
ソースコード
import java.util.Random;
public class Main {
public static void main(String[] args) {
Random r = new Random();
int r = random.nextInt(➀);
//0以上➀未満までの間で乱数を取得する
}
}
import文も含めて1文にまとめることも可能である。int r = new java.util.Random().nextInt(➀);
また、コンストラクタに初期値(シード)を与えると、生成される疑似乱数列を固定することができる。Random r = new Random(0);
2.Math関数を用いた記述
MathクラスはRandomクラスとは異なり、double型の0.0 以上 1.0 未満の完全ランダムな数値が返される。
Mathクラスはdouble型であり、小数点以下をいじることができるメソッドが3つ存在する。
1つ目は、Math.ceilメソッドで、引数に指定した数値に対して、数値以上の値で最小の整数を戻り値として返す。いわゆる切り上げである。
2つ目は、Math.floorメソッドで、引数に指定した数値に対して、数値以下の値で最大の整数を戻り値として返す。いわゆる切り捨てである。
3つ目は、Math.roundメソッドで、引数に指定した数値に対して、数値を四捨五入した値をlong 型の整数で戻り値として返す。