【问题标题】:Single Java Random number trying to get the fixed range尝试获得固定范围的单个 Java 随机数
【发布时间】:2018-03-23 12:21:37
【问题描述】:

我正在尝试生成一个随机数生成器,它具有固定的 1-100 范围为 int min = 1int max = 100。到目前为止,我设法得到了这个代码。使用 BlueJ 作为环境。

import java.util.Random; 

public class RandomNumber { 
    public static int getRandomNumberInts(int min, int max) { 
        Random random = new Random(); 
        return random.ints(min,(max+1)).findFirst().getAsInt(); 
    }
} 

有没有其他方法可以在我的范围内获得一个固定的数字而无需自己输入范围?

【问题讨论】:

标签: java random ide bluej


【解决方案1】:

您可以将您的界限传递给构造函数,然后RandomNumber 对象知道它们,您可以在没有参数的情况下调用您的方法。但是你的方法不能再是静态的了。

public class RandomNumber {

    private Random random;
    private int minBound;
    private int maxBound;

    public RandomNumber(int minBound, int maxBound) {
        this.random = new Random();
        this.minBound = minBound;
        this.maxBound = maxBound;
    }

    public int getRandomNumberInts() {
        return random.ints(minBound, (maxBound + 1))
                     .findFirst()
                     .getAsInt(); 
    }
}

那你这样称呼它

RandomNumber rn = new RandomNumber(1, 100);
System.out.println(rn.getRandomNumberInts());
System.out.println(rn.getRandomNumberInts());    
System.out.println(rn.getRandomNumberInts());    
System.out.println(rn.getRandomNumberInts());

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-02
    • 2020-08-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-16
    • 2015-04-08
    • 2014-10-23
    相关资源
    最近更新 更多