我有一个数字列表,例如:{1,2,3,4,5,6}.
我想随机生成这些数字,我这样做:
void Update(){
float ran = Random.Range(1,6);
print(ran);
}
Run Code Online (Sandbox Code Playgroud)
如何比其他数字生成或打印3个?
如果您想要偏斜分布,您可以将生成的值映射到所需的分布
// all 1..6 are equal with exception of 3 which appears more frequently
// 1..2, 4..6 - 10% each (1 occurence per 10 items)
// 3 - 50% (5 occurences per 10 items)
private static int[] map = new int[1, 2, 3, 4, 5, 6, 3, 3, 3, 3];
...
void Update{
float ran = map[Random.Range(map.Length)];
print(ran);
}
Run Code Online (Sandbox Code Playgroud)