0

これは私が得た質問です。範囲を制限するにはどうすればよいですか? 私のコードは以下です。ありがとう

質問 : メソッド呼び出し genRandom() を作成して、1 から 100 までの 5 つのランダムな整数を生成し、それらを画面に出力します。main() 内で genRandom() を呼び出します。

import java.util.Random;

class RandomNumbers{
    public static void main(String [] args){

        Random randomNum = new Random();

        for(int i = 0; i<5; i++){
            System.out.println("Random number is : " + randomNum.nextInt(5));
            }
    }
}
4

5 に答える 5

4

の引数として 100 を使用しますnextInt()

nextInt(100)

コメントに基づいて更新

新しい静的メソッドを作成するだけです

public static int genRandom(){
  return new Random().nextInt(100);// or may be cache random instance
}
于 2012-10-14T06:30:39.160 に答える
1

クラスに書き込みgenRandom()RandomNumbers以下のように使用します。

    public class RandomNumbers{
       static Random randomNum = new Random();

       public static void main(String[] args){
          for(int i=0; i< 5; i++){
               System.out.println("Random number is : " + genRandom());
          }
       }

       public static int genRandom(){
          return randomNum.nextInt(100);
       }   
    }
于 2012-10-14T06:41:07.130 に答える
0

次のようなことを試すことができます:

package com.stackoverflow.works;

import java.util.Random;

public class RandomNumber {

    public static int genRandom(int randomRange) {
        return new Random().nextInt(randomRange);
    }

    public static void genRandom(int randomRange, int displayCount) {
        for (int i = 0; i < displayCount; i++) {
            System.out.println("Random Number [Iteration " + (i + 1) +"]: " + genRandom(randomRange));
        }
    }

    public static void main(String[] args) {
        int randomRange = 100; // You can change the limit if required
        int displayCount = 5; // You can decide the iteration count

        RandomNumber.genRandom(randomRange, displayCount);
    }

}

出力:

Random Number [Iteration 1]: 14
Random Number [Iteration 2]: 84
Random Number [Iteration 3]: 96
Random Number [Iteration 4]: 38
Random Number [Iteration 5]: 61
于 2012-10-14T07:13:16.820 に答える
0

nextInt0 から指定された範囲値までの乱数を生成します。あなたが与える5と、 5 の間でランダムに生成されます。1 から 100 までの乱数が必要な場合は、nextIntmethod で 100 を指定します。

Java 6 API ドキュメントhttp://docs.oracle.com/javase/6/docs/api/java/util/Random.html#nextInt(int ) をお読みください。

于 2012-10-14T06:35:59.147 に答える
-1

nextDouble()以下のように使用できます。

r = minValue + ((new Random()).nextDouble() * (maxValue - minValue));

minValue, maxValue乱数が必要な範囲はどこですか。

完全なコード

import java.util.Random;

class Main {

    int genRandom(int minValue, int maxValue) {
        return (int) (minValue + ((new Random()).nextDouble() * (maxValue - minValue)));
    }

    public static void main(String [] args){
        Main m = new Main();
        for(int i = 0; i<5; i++){
            System.out.println("Random Number is: " + m.genRandom(1, 100));
        }
    }
}

サンプル出力:

Random Number is: 95
Random Number is: 89
Random Number is: 9
Random Number is: 73
Random Number is: 20
于 2012-10-14T06:33:25.220 に答える