在C#中生成并重复数字

A N*_*ken 5 c# enumerable repeat

我想以随机顺序从1-> 36生成一个具有144个数字的数组(因此每个数字重复4次).我们可以使用Enumerable.Repeat和Enumerable.Range来做到这一点.如果是,请向我解释如何?

Jon*_*eet 10

好吧,创建包含所有数字的序列很简单:

var items = from x in Enumerable.Range(1, 36)
            from y in Enumerable.Repeat(x, 4)
            select y;
Run Code Online (Sandbox Code Playgroud)

然后你可以使用ToArray它将它变成一个数组并随机播放它.关于在SO上对C#进行数据混乱的问题有很多问题,比如这个问题.您既可以直接使用该代码,也可以ToArray在适当的位置调用和随机播放该数组,而不会在最后生成它.