如何在C#中每次选择不同的随机数

时间:2017-06-21 13:57:40

标签: c# arrays multidimensional-array random

如果我有一个包含某些值的数组。如何每次获得不同的随机数 - 表示索引 - 从数组中获取不同的值?

1 个答案:

答案 0 :(得分:0)

生成所需范围的序列,并随机排序。然后,将值放入堆栈并从该堆栈中选取。例如:

var rnd = new Random();
var randomValues = new Stack<int>(Enumerable.Range(0,5).OrderBy(x => rnd.Next()));
var randomIndex1 = randomValues.Pop();
var randomIndex2 = randomValues.Pop();