通过继承接口IComparable,实现CompareTo方法,达到按照某个属性进行排序的目的。当然List排序的方法还有很多种,这里不一一列举。
定义要排序的实体类,实现接口IComparable的CompareTo方法。
public class PersonInfo : IComparable { public string PNO { get; set; } public string PName { get; set; } public PersonInfo(string pNO, string pName) { PNO = pNO; PName = pName; } public int CompareTo(object obj) { PersonInfo otherPersonInfo = obj as PersonInfo; if (otherPersonInfo != null) { return this.PNO.CompareTo(otherPersonInfo.PNO); } else { throw new ArgumentException("Object is not a PersonInfo!"); } } }
在将数据全部填充到List后,调用Sort()方法,Sort方法通过PersonInfo的CompareTo方法进行比较排序。
public partial class Default3 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { List<PersonInfo> list = new List<PersonInfo>(); list.Add(new PersonInfo("4", "猴六")); list.Add(new PersonInfo("2", "李四")); list.Add(new PersonInfo("1", "张三")); list.Add(new PersonInfo("3", "王五")); list.Sort(); string str = string.Empty; foreach (PersonInfo obj in list) { str += obj.PNO + " " + obj.PName + "<br/>"; } Literal1.Text = str; } }
发表评论
相关文章
国内AI资源汇总,AI聊天、AI绘画、AI写作、AI视频、AI设计、AI编程、AI音乐等,国内顺畅访问,无需科学上网。
扫码或点击进入:萤火AI大全
文章分类
最新评论