问题描述
- 将一个var类型乱序执行
-
本来对一个List类型中的每个T利用foreach依照循序执行,
现在要求是循序执行,
请问大家有好的方法吗?
解决方案
简单
int[] list = {1,2,3,4,5,6};
foreach (var item in list.OrderBy(x => Guid.NewGuid()))
{
//...
}
解决方案二:
List本身是不排序的,要排序的话可以使用SortedList
解决方案三:
可以使用set来进行排序~然后用set.iterator()取值~
解决方案四:
http://www.cnblogs.com/bradwarden/archive/2012/06/19/2554854.html
解决方案五:
OrderBy(x=>Guid.NewGuid())乱序排列后执行
解决方案六:
写一个排序的方法:
原理:用sort方法排序。
list.Sort( );
如果sort不传参数 ,就按默认的排序,这个你要百度下了,然后就是专门写一个排序的类,用sort时告诉他用什么排序。
类: class AgeASC : IComparer
{
#region IComparer<Student> 成员 升序
public int Compare( Student x , Student y )
{
return x.StuAge - y.StuAge;
}
#endregion
下面调用:
list.Sort( new IDDESC() );
排序后list已经排好了,你再用就是
时间: 2024-11-03 21:09:30