Java 随机整数:Android

Java 随机整数:Android,java,android,Java,Android,我猜这很简单,但由于某种原因我无法理解。那么,如何从两个数字中选择一个随机整数呢。我想从1和2中随机选取一个整数。只需使用标准均匀随机分布,对其进行采样,如果小于0.5,则选择一个值,如果大于,则选择另一个值: int randInt = new Random().nextDouble() < 0.5 ? 1 : 2; 使用以下功能: int fun(int a, int b) { Random r = new Random(); if(r.nextInt(2)) re

我猜这很简单,但由于某种原因我无法理解。那么,如何从两个数字中选择一个随机整数呢。我想从1和2中随机选取一个整数。

只需使用标准均匀随机分布,对其进行采样,如果小于0.5,则选择一个值,如果大于,则选择另一个值:

 int randInt = new Random().nextDouble() < 0.5 ? 1 : 2;

使用以下功能:

int fun(int a, int b) {
    Random r = new Random();
    if(r.nextInt(2)) return a;
    else return b;
}
这将返回均匀分布的a或b。 这意味着一个非常简单的方法:如果你运行这个函数N次,预期出现的“a”和“b”各是N/2

int fun(int a, int b) {
    Random r = new Random();
    if(r.nextInt(2)) return a;
    else return b;
}