androidで乱数を取得
1~30まででランダムな数字をとりたい場合。
import java.util.Random; Random r = new Random(); int n = r.nextInt(30) + 1;
java.util.Randomをインポートして、nextIntで範囲を指定して取得するだけです。
範囲を30と指定すると、0~29までが取得されるため、+1して1~30までとします。
他の方法はMath.random()を使う方法です。
//1~30までの範囲でランダムな数字を取得 int n = (int)Math.random()*30 + 1;
Math.random()は0~1の範囲でランダムな数を取得します。
指定してあげたい範囲の数をかけて、0がいらなければ+1をするようになります。
速度はnextIntのほうが速いようです。
比較していたサイトは下です。
Math.random()*n か それともRandom.nextInt(n)か
速度を意識するならnextIntですね。