是的。一个人拿15个并进行订购,另一个人订购它们并拿走了15个。
using System.Linq;
public static void Main(string[] args)
{
var nums = Enumerable
.Range(0, 50)
.OrderBy(o => Guid.NewGuid().GetHashCode())
.ToList();
Console.WriteLine(string.Join(",", nums));
Console.WriteLine(string.Join(",", nums.Take(15).OrderBy(i => i)));
Console.WriteLine(string.Join(",", nums.OrderBy(i => i).Take(15)));
Console.ReadLine();
}
输出:
6,32,22,18,9,11,5,33,0,24,1,42,38,30,21,20,23,2,36,8,15,12,29,47,46,19,49,44,4,3
7,40,3,10,41,34,17,31,16,43,35,39,25,27,45,7,28,14,13,26,48
0,1,5,6,9,11,18,21,22,24,30,32,33,38,42 // nums.Take(15).OrderBy(i => i)
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14 // nums.OrderBy(i => i).Take(15)
测试相对简单...