0

Java API には、0 (含む) から n (含まない) までの整数を生成する方法がありますが、2.0 から 3.0 などの特定の範囲を指定して、double 値の乱数を生成する方法はありません。これはどのように行うことができますか?


 double x = 0.7 + Double.valueOf(Math.random()*(9.0-0.7)).intValue(); 

その結果、タイプ .7 の数はほんのわずかです。

4

3 に答える 3

2

あなたは非常に近いですが、intValue()呼び出しは不要であり、Double.valueOf( String )呼び出しはコンパイルさえすべきではありません。

public double random( double min, double max )
{
  double diff = max - min;
  return min + Math.random( ) * diff;
}
于 2012-04-24T02:30:48.963 に答える
0

代わりにランダムクラスを試しましたか? http://docs.oracle.com/javase/1.4.2/docs/api/java/util/Random.html float、double...のメソッドがあります。

于 2012-04-24T02:47:50.790 に答える