c# List集合排序
2013-11-20 19:37
281 查看
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class ListRate : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { List<TicketRuleTimeInfo> list = new List<TicketRuleTimeInfo> { new TicketRuleTimeInfo("B",1,2,"",0.2m,0.1m), new TicketRuleTimeInfo("C",1,2,"",0.3m,0.1m), new TicketRuleTimeInfo("D",1,2,"",0.4m,0.1m), new TicketRuleTimeInfo("A",1,2,"",0.1m,0.1m), }; foreach (var item in list) { Response.Write(item.DepartBA + ":" + item.Rate); } Console.WriteLine("排序后"); list.Sort(CompareByRate); Response.Write("========================"); foreach (var item in list) { Response.Write(item.DepartBA + ":" + item.Rate); } } public static int CompareByRate(TicketRuleTimeInfo x, TicketRuleTimeInfo y)//从大到小排序器 { if (x == null) { if (y == null) { return 0; } return 1; } if (y == null) { return -1; } int retval = y.Rate.CompareTo(x.Rate); return retval; } } public class TicketRuleTimeInfo { public TicketRuleTimeInfo(string departBA, int minTime, int maxTime, string stadardCabin, decimal rate, decimal lowCharge) { DepartBA = departBA; MinTime = minTime; MaxTime = maxTime; StandardCabin = stadardCabin; Rate = rate; LowCharge = LowCharge; } private string _DepartBA = "before"; /// <summary> /// 起飞前后{before起飞前、after起飞后} /// </summary> public string DepartBA { get { return _DepartBA; } set { _DepartBA = value; } } private int _MinTime = 0; /// <summary> /// 时间区间最低{单位小时hour: 起飞前(DepartTime-XePnrTime)大于MinTime;起飞后System.Math.Abs(DepartTime-XePnrTime)大于MinTime;} /// </summary> public int MinTime { get { return _MinTime; } set { _MinTime = value; } } private int _MaxTime = 8760; /// <summary> /// 时间区间最高{单位小时hour: 起飞前(DepartTime-XePnrTime)小于等于MaxTime;起飞后System.Math.Abs(DepartTime-XePnrTime)小于等于MaxTime;} /// </summary> public int MaxTime { get { return _MaxTime; } set { _MaxTime = value; } } private string _StandardCabin = ""; /// <summary> /// 基准舱位 /// </summary> public string StandardCabin { get { return _StandardCabin; } set { _StandardCabin = value; } } private decimal _Rate = 0; /// <summary> /// 费率% /// </summary> public decimal Rate { get { return _Rate; } set { _Rate = value; } } private decimal _LowCharge = 0; /// <summary> /// 最低手续费{单位元} /// </summary> public decimal LowCharge { get { return _LowCharge; } set { _LowCharge = value; } } }
相关文章推荐
- wpf 导出Excel Wpf Button 样式 wpf简单进度条 List泛型集合对象排序 C#集合
- C# List<T> 数组,集合等排序
- C#中List或其它集合对象排序方法的一点理解
- C#泛型集合List<T>自带方法之排序
- C#中对List<Object>泛型集合,根据对象的某一属性进行升序排序
- C# SortedList 可重复键的排序键/值对集合
- C#读取数据库返回泛型集合详解(DataSetToList)
- Java Collections.sort方法对list集合排序
- C# 如何将List拆分成多个子集合
- Java对List集合中的元素进行排序
- 对List集合中的元素进行排序
- NET C# List泛型集合 使用方法
- 面试小结:对List集合中的元素进行排序
- 【C#】洗牌算法、利用delegate自定义list的sort排序方法、summary注释
- list集合绑定在datagridview上时如何实现排序
- List集合排序(默认及自定义排序)
- (好使)用Java集合中的Collections.sort方法对list排序的两种方法
- List集合元素几种排序方法总结
- Java中对List集合内的元素进行顺序、倒序、随机排序的示例代码
- c#中List <int[]>集合添加和查找元素