[Java]Random.nextInt()で乱数に最小値を設定するには?

Java

どうも、ちょげ(@chogetarou)です。

Random.nextInt()で乱数に最小値を設定する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

Random.nextInt()で乱数に最小値を設定するには、最大値を使います。

まず、Randomのインスタンスを生成します。

次に、インスタンスからnextInt()を呼び出します。

nextInt()の引数に最大値から最小値を引いた値を指定します。

そして、nextInt()の結果に最小値を足します。

//max=最大値、min=最小値
Random rnd = new Random();
int num = rnd.nextInt(max - min) + min;

上記のnextInt()は、最小値から最大値までの乱数を生成します。(最大値は含みません)

指定した最大値を範囲に含めたい場合は、nextInt()の引数に1を足します。

//maxも含めて生成
int num = rnd.nextInt(max + 1 - min) + min;

使用例

import java.util.*;

public class Main {
    public static void main(String[] args) throws Exception {
        Random rnd = new Random();
        int min = 90;
        int max = 100;
        
        for (var i = 0; i < 10; i++) {
            int num = rnd.nextInt(max - min) + min;
            System.out.println(num);
        }
    }
}
出力:
90
92
94
99
97
94
99
99
99
97

コメント

タイトルとURLをコピーしました