c# - 如何选择随机选项?
问题描述
我有一个整数数组,它应该如下所示:
7 3 2 4 5 6 1 9 10 8 Values
[1 2 3 4 5 6 7 8 9 10] Order In Array
此值应更改其顺序,并且每个值都是随机选项,例如:
如果它选择第一个值为 6,它选择蓝色,然后,它转到第二个值,如果值为 4,它选择绿色。
每个数字都等于一种颜色。
我一直在想我可以使用 if 条件,但我不知道是否有一个属性来检查值,因为如果我为每个选项做一个 if 条件,它可能需要 100 多行代码!你知道我该如何改进它吗?
解决方案
您几乎可以在一行中做到这一点:
var rnd = new Random();
var orderedNumbers = new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
var randomizedNumbers = orderedNumbers.OrderBy(c => rnd.Next()).ToArray();