Math.random() 操作: 指定された範囲内のランダムな整数の生成
Java 関数 Math.random() は、範囲内の乱数を生成します。範囲 [0, 1)。ただし、特定の範囲内のランダムな整数を取得する必要がある状況もあります。この記事では、Math.random() を使用してこれを実現する方法を示します。
3 から 5 までのランダムな整数を生成する意図
ステートメント "(int) Math .random() * 5 3" は範囲 [3, 5] 内のランダムな整数を正しく生成しません。カスタム メソッドを使用して修正できます。メソッド:
int randomWithRange(int min, int max) { int range = (max - min) + 1; return (int) (Math.random() * range) + min; }
このメソッドは、可能な値の範囲を計算し、Math.random() で乗算し、包含性を確保するために最小値を追加します。
出力例
System.out.println(randomWithRange(3, 5)); // Output: 3
間違ったものに対する馬鹿防止順序付け
最小値が最大値より大きい場合のエラーを防ぐために、更新されたメソッドは次のとおりです:
int randomWithRange(int min, int max) { int range = Math.abs(max - min) + 1; return (int) (Math.random() * range) + (min <= max ? min : max); }
二重乱数生成の拡張
同様の方法を使用して、ランダムな倍精度を生成できます数値:
double randomWithRange(double min, double max) { double range = (max - min); return (Math.random() * range) + min; }
このメソッドの使用:
System.out.println(randomWithRange(3.0, 5.0));
以上がJavaで特定の範囲内でランダムな整数(およびDouble)を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。