C# 数组 随机 排序
2017-02-14 13:08
274 查看
int[] arrInt = new int[100]; for (int i = 0; i < 100; i++) { arrInt[i] = i; } arrInt = arrInt.OrderBy(c => Guid.NewGuid()).ToArray<int>(); foreach (var item in arrInt) { Console.WriteLine(item); } Console.ReadKey();
反编译后
int[] arrInt = new int[100]; for (int i = 0; i < 100; i++) { arrInt[i] = i; } arrInt = (from c in arrInt orderby Guid.NewGuid() select c).ToArray<int>(); int[] array = arrInt; for (int j = 0; j < array.Length; j++) { int item = array[j]; Console.WriteLine(item); } Console.ReadKey();
实质
用C#3.0新增的Linq技术中的OrderBy方法排序,排序的依据是与原序列元素对应生成的一个“键”——Grid.NewGuid()方法返回的一个随机32位不重复Guid字符串。因为每次生成的Guid字符串大小都不同,且大小与生成先后无关,所以按这个“键”排序后的整数序列的顺序是随机的。
相关文章推荐
- C# 随机产生一定长度数组并对其排序
- C#对象数组排序方法
- C#一个产生随机不重复数组的方法
- asp数组随机排序
- C#中1-100不重复的随机存入长度为100的数组中
- c# 合并数组后排序输出
- C#实现数组的排序
- AS3数组随机排序
- C# 数组查找与排序实现代码
- C#数组排序问题
- C#.NET产生在两个值之间的不重复随机数组
- C#对象数组排序方法
- C#的对数组排序
- C#对象数组排序方法
- c# 数组排序
- 面试题: 随机生成1-100的100个元素的数组,并按最快的排序算法排序,并打印出来
- 面试题:C#声明一个100大小的数组 随机生成1-100之间不重复的数
- asp数组随机排序
- asp数组随机排序
- 用c# 产生一个 int 数组 长度为100,并向其中随机插入 1-100 ,并且不能重复