随机数生成器偏向范围中间的数字,Java,libGDX

Random Number Generator Biased To Numbers in the Middle of Range, Java, libGDX

我正在 libGDX 设计一款游戏,它会掉落不同大小的石头供用户躲避。

我的问题: 我如何创建一个接受低位和高位 int 值以及 returns 随机数的方法。但是,我希望这个随机数偏向范围的中间(类似于正态分布)。

我希望该方法看起来像这样: public int randBiasInt(int low, int high) { }

类似这样的东西应该有用...

public int getBiasedInt(int min, int max) {
    int rand = Math.random() * max;
    while (rand < min) {
        rand = Math.random();
    }
    int mid = (max / 2) - (min / 2);
    int halfmid = mid / 2;
    if (rand > mid) {
        rand -= Math.random() * halfmid;
    } else {
        rand += Math.random() * halfmid;
    }
    return rand;
}

不是最漂亮的,我知道。但是对于你想要的应该是可以接受的...