Home > Java > [Java] 乱数

[Java] 乱数

乱数生成にはいくつか方法があります。
 

  1. java.util.Randomクラス
  2. java.lang.Mathクラス

 

java.util.Randomクラス

Random#nextInt() で乱数を取得できます。

引数で乱数の範囲を指定します。指定値がnだとすると、0~[n-1]のいずれかの値が返されます。
例えば、100を指定すると0~99の範囲のいずれかの値が取得されることになります。
 

乱数の生成にはseed値と呼ばれる乱数の種が使われるのですが、この値が同じだと毎回同じ順で同じ値が取得されることになってしまいます。

本当の意味での乱数を取得したいのであればランダムなseed値を与えればよいのですが、このseed値に最適なのが System.currentTimeMillis() で取得できるシステム時間です。

Randomクラスのコンストラクタでseed値が指定できるようになっていますので、このシステム時間を設定するようにしましょう。
 

以下は0~9までの乱数を取得するメソッドのサンプルです。

long seed = System.currentTimeMillis();
Random rnd = new Random(seed);

/**
 * 乱数を取得する。
 */
public int getRandomValue() {
    int rndValue= rnd.nextInt(10);
    return rndValue;
}

 

java.lang.Mathクラス

Math.random() で0.0以上1.0未満の乱数を取得できます。
0~9までの乱数を取得したい場合などは乗算を使います。

public int getRandomValue() {
    int rndValue = Math.random() * 10;
    return rndValue;
}

 
 

関連があると思われる記事:

このエントリーをはてなブックマークに追加
はてなブックマーク - [Java] 乱数
Facebook にシェア
[`google_buzz` not found]
[`yahoo` not found]
[`livedoor` not found]
[`friendfeed` not found]
[`tweetmeme` not found]
[`grow` not found]

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://gacken.com/wp/program/java/2232/trackback/
Listed below are links to weblogs that reference
[Java] 乱数 from ミライニトドケ

Home > Java > [Java] 乱数

Search
Feeds
Meta
人気の記事

Return to page top