指定された範囲内でランダムな Double を生成する
プログラミングでは、特定の範囲内でランダムな値を生成することが必要になることがよくあります。これは通常、0 から 1 までの値を返す乱数ジェネレータを使用して実現されます。ただし、特定の最小値と最大値がある場合は、それに応じて出力を調整する必要がある場合があります。
次の状況を考えてみましょう。 2 つの double 値 (最小値と最大値) があり、これら 2 つの値の間でランダムな double 値を生成したいとします。次のコードは、0 と 1 の間のランダムな double のみを生成します。
Random r = new Random(); r.nextDouble();
範囲を指定するには、いくつかの追加計算を実行する必要があります。
Random r = new Random(); double rangeMin = 100; double rangeMax = 101; double randomValue = rangeMin (rangeMax - rangeMin) * r.nextDouble();
このコードの仕組みは次のとおりです:
この計算により、生成される値の範囲が実質的に次のようにシフトされます。指定された範囲内にあること。したがって、randomValue は rangeMin と rangeMax の間のランダムな double になります。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3