使用随机的百分比

时间:2016-08-08 20:42:43

标签: java random

今天我创建了一个生成random数字(0,1,2或3)的函数 但我希望你有一个感知功能。

我想对生成的数字落到的每个机会应用一个百分比 示例:0将有60%的机会被绘制,数字为1 19%,...

 public void GenerGame(){

        Random r = new Random();
        int game = r.nextInt(max - min +1);

        if (game == 0){
            // do something
        }
        else if (game == 1){
            // do something
        }
        else if (game == 2){
            // do something
        }
        else {
            // do something
        }
 } 

我可以使用Random吗?

1 个答案:

答案 0 :(得分:11)

你可以通过重新考虑你的RNG来做到这一点。

如果将随机生成范围更改为0-99,您可以将其视为生成百分比的范围,从而规定这些范围内的各种行为。

public void GenerGame(){

    Random r = new Random();
    int game = r.nextInt(100);

    if (game < 60){ // 60%
        // do something
    }
    else if (game < 79){ // 19%
        // do something
    }
    else if (game < 93){ // 14%
        // do something
    }
    else { // 7%
        // do something
    }
} 

您可以通过将范围提高到0-999来将精度更改为十分之一。