質問があります: Java(android)で0から4までの数字をどのように描画しますか? ランダム機能の使い方は?乱数
乱数
答えて
あなたが必要とするのは以下の通りです。
Random r = new Random();
int randomInt = r.nextInt(5);
あなたがループ内でこれを行う場合は、必ずループのRandom
外を初期化します。
Random r = new Random();
for(int i = 0;i < someThing; i++) {
System.out.println(r.nextInt(5));
}
Random
クラスのドキュメントを参照してくださいするように注意するhttp://download.oracle.com/javase/6/docs/api/java/util/Random.html
ことの一つは、あなたが新しいランダムなオブジェクトに新しい番号をするたびに作成するべきではないということです。アプリケーションの起動時にこの行を一度に実行する必要があります。
Random r = new Random();
その後、これはあなたが新しい乱数たいたびに呼び出されなければなりません:あなたは一つだけを生成する必要がある場合
int x = r.nextInt(5);
System.out.println(""+(int) (Math.random()*5.0));
を乱数を使うと、Math.random()をオブジェクトを作るよりも少し安いと思います。
注:(0含め、nは除く)、nは0から任意のランダムな整数を生成するために、使用直前:
(int) (Math.random()*n);
は、m + nは、(包括Mまで、Mからの任意の整数の乱数を生成するために、 m + nは排他的)だけを使用します。
m + (int) (Math.random()*n);
Attantionをお支払いください - コードたびに呼び出す:
Random r = new Random();
はおそらく、rはウィルあなたには同じ数字が書かれています(あなたの中にはファナモナが気付いた人はほとんどいません)。
私はそれが乱数とJavaの問題に何らかの形で接続されていると思います。とにかく、私の解決策は、私のクラスに静的変数を追加することですJava random always returns the same number when I set the seed?
:
static Random sRandomGen = new Random();
と呼ん Java: Can (new Random()).nextInt(5) always return the same number? と私は乱数が必要な場合、関連するメソッドからnextInt。 Thatway私は結果の間で等分を受け取ります。
int rnd = sRandomGen.nextInt(numofmatches - 1);
この解決策は私にはうってつけです。
- 1. 乱数
- 2. j2me - 乱数 - カードゲーム
- 3. は乱数
- 4. 乱数javaスクリプト
- 5. テキストフィールドの乱数
- 6. 乱数とAJAX
- 7. Javascript乱数?
- 8. 乱数(C#の)
- 9. 乱数ゲーム
- 10. Verilog乱数ジェネレータ
- 11. 乱数ジェネレータjframe
- 12. 乱数ジェネレータ:カウンタ
- 13. 乱数JavaScript
- 14. パラレル乱数ジュリア
- 15. スレッドセーフな乱数
- 16. Haskellの乱数
- 17. C#乱数ジェネレータエラー
- 18. Python乱数ジェネレータエラー
- 19. 乱数生成
- 20. 順序乱数
- 21. 乱数セットHaskell
- 22. Console.log乱数で
- 23. バブルソート乱数
- 24. 乱数衝突
- 25. C++乱数
- 26. Python Looping乱数
- 27. Visual Basic-乱数
- 28. 擬似乱数の整数
- 29. 乱数=同じ星の数
- 30. 乱数の動的数
ランダムのインスタンスを作成することは、あなたの方法よりも高価である必要はありません – ognian
Ognianは正しいです。明確にするために、Math.random()への最初の呼び出しは、実際にはすべてjava.util.Randomオブジェクトを作成しますその後のMath.random()の呼び出し。 –
おかげで、ありがとう – nnythm