亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

C#基礎---IComparable用法,實現List<T>.sort()排序

2019-11-14 16:26:09
字體:
來源:轉載
供稿:網友

       List<T>.sort()可以實現對T的排序,比如List<int>.sort()執行后集合會按照int從小到大排序。如果T是一個自定義的Object,可是我們想按照自己的方式來排序,那該怎么辦呢,其實可以用過IComparable接口重寫CompareTo方法來實現。流程如下:

      一.第一步我們申明一個類Person但是要繼承IComparable接口: 

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace TestIComparable{    public class Person : IComparable<Person>    {        public string Name { get; set; }        public int Age { get; set; }        public int CompareTo(Person obj)        {            int result;            if (this.Name == obj.Name && this.Age == obj.Age)            {                result = 0;            }            else            {                if (this.Name.CompareTo(obj.Name) > 0)                {                    result = 1;                }                else if (this.Name == obj.Name && this.Age > obj.Age)                {                    result = 1;                }                else                {                    result = -1;                }            }            return result;        }        public override string ToString()        {            return this.Name + "-" + this.Age;        }    }}

  二.然后在主函數里面調用sort方法即可.類就會按照姓名從小到大,如果姓名相同則按照年齡從小到大排序了。

    public class PRogram    {        public static void Main(string[] args)        {            List<Person> lstPerson = new List<Person>();            lstPerson.Add(new Person(){ Name="Bob",Age=19});            lstPerson.Add(new Person(){ Name="Mary",Age=18});            lstPerson.Add(new Person() { Name = "Mary", Age = 17 });            lstPerson.Add(new Person(){ Name="Lily",Age=20});            lstPerson.Sort();            Console.ReadKey();        }    }

   三,如果不繼承IComparable接口,我們該如何實現排序呢??梢允褂肔inq來實現。其實效果是一樣的,只是如果類的集合要經常排序的話,建議使用繼承接口的方法,這樣可以簡化sort的代碼,而且更容易讓人看懂。

public static void Main(string[] args)        {            List<Person> lstPerson = new List<Person>();            lstPerson.Add(new Person(){ Name="Bob",Age=19});            lstPerson.Add(new Person(){ Name="Mary",Age=18});            lstPerson.Add(new Person() { Name = "Mary", Age = 17 });            lstPerson.Add(new Person(){ Name="Lily",Age=20});            lstPerson.Sort((x,y) =>            {                int result;                if (x.Name == y.Name && x.Age == y.Age)                {                    result = 0;                }                else                {                    if (x.Name.CompareTo(y.Name) > 0)                    {                        result = 1;                    }                    else if (x.Name == y.Name && x.Age > y.Age)                    {                        result = 1;                    }                    else                    {                        result = -1;                    }                }                return result;            });            Console.ReadKey();        }

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国自在线精品视频| 亚洲a∨日韩av高清在线观看| 欧美日韩xxxxx| 亚洲男人天堂网站| 成人免费淫片aa视频免费| 中文字幕av一区二区| 日本乱人伦a精品| 久久久精品久久久| 亚洲精品国产拍免费91在线| 日韩经典中文字幕在线观看| 欧美日本中文字幕| 午夜精品久久久久久久99热浪潮| 中文字幕无线精品亚洲乱码一区| 欧美激情中文字幕在线| 色综合视频一区中文字幕| 国产在线播放不卡| 欧美激情视频免费观看| 日韩va亚洲va欧洲va国产| 亚洲国产精品推荐| 国产日韩欧美黄色| 久久久久久美女| 日韩久久精品电影| 成人欧美一区二区三区在线湿哒哒| 欧美午夜xxx| 中文字幕亚洲字幕| 精品调教chinesegay| 97福利一区二区| 成人在线观看视频网站| 日本不卡视频在线播放| 国产精品99久久99久久久二8| 国产精品欧美一区二区三区奶水| 欧美成人性色生活仑片| 日韩欧美在线播放| 国内精品久久久久影院优| 97在线免费视频| 青青a在线精品免费观看| 国产剧情日韩欧美| 欧美另类极品videosbestfree| 中文字幕日韩av电影| 久久99亚洲精品| 日韩av电影在线免费播放| 成人h视频在线观看播放| 欧美成人免费小视频| 伊人青青综合网站| 欧美日本啪啪无遮挡网站| 色偷偷av一区二区三区乱| 久久久久久成人精品| 欧美日韩成人精品| 欧美激情第99页| 国产视频在线一区二区| 亚洲精品ady| 久久99热精品| 爽爽爽爽爽爽爽成人免费观看| 成人黄色av播放免费| 国产精品aaa| 欧美性受xxxx白人性爽| 成人午夜激情免费视频| 日本久久91av| 亚洲最大成人免费视频| 中文字幕亚洲第一| www.日本久久久久com.| 欧美中文在线免费| 日韩a**站在线观看| 欧美成人精品一区二区| 日韩视频免费大全中文字幕| 91精品国产综合久久香蕉最新版| 亚洲免费人成在线视频观看| 久久久最新网址| 欧美孕妇与黑人孕交| 欧美成人h版在线观看| 国产午夜精品视频免费不卡69堂| 日韩在线观看高清| 91精品在线一区| 久久99精品视频一区97| 久久亚洲影音av资源网| 亚洲国产另类 国产精品国产免费| 欧美精品性视频| 日韩av在线最新| 日韩亚洲成人av在线| 色与欲影视天天看综合网| 成人免费午夜电影| 日韩美女视频中文字幕| 久热精品视频在线观看| 国产欧美日韩精品丝袜高跟鞋| 久久久久久一区二区三区| 欧美小视频在线观看| 亚洲成人黄色网址| 日韩电影大全免费观看2023年上| 国产日韩在线看| 亚洲一区二区少妇| 色婷婷久久av| 精品久久久91| 欧美大秀在线观看| 久久精品99国产精品酒店日本| 中文字幕不卡在线视频极品| 国外成人性视频| 国产精品久久久久久久久免费| 国产精品成人一区| 欧美性xxxxx极品| 欧美成年人视频| 国产成人精品免费久久久久| 国产91精品网站| 日本成人在线视频网址| 精品人伦一区二区三区蜜桃网站| 国产噜噜噜噜噜久久久久久久久| 国产精品爽爽ⅴa在线观看| 亚洲精品在线91| 国产精品中文字幕在线观看| 正在播放欧美视频| 日韩av在线不卡| 91产国在线观看动作片喷水| 成人免费淫片视频软件| 国产成人精彩在线视频九色| 91国产精品视频在线| 亚洲色图35p| 伊人久久男人天堂| 97在线日本国产| 国产日韩精品电影| 精品福利一区二区| …久久精品99久久香蕉国产| 欧美理论片在线观看| 日韩欧美在线一区| 国产成人在线一区二区| 亚洲欧洲中文天堂| 欧美人成在线视频| 国外日韩电影在线观看| 美女999久久久精品视频| 日本亚洲精品在线观看| 国产成一区二区| 4438全国亚洲精品在线观看视频| 亚洲男人天堂2024| 午夜精品久久久久久99热软件| 精品高清一区二区三区| 久久伊人免费视频| 亚洲欧洲在线看| 国产日韩av在线播放| 欧美精品videofree1080p| 亚洲欧美制服另类日韩| 琪琪亚洲精品午夜在线| 68精品国产免费久久久久久婷婷| 久久综合网hezyo| 国产成人福利视频| 国产精品91免费在线| 成人美女av在线直播| 日韩中文字在线| 国产精品成av人在线视午夜片| 色在人av网站天堂精品| 亚洲精品在线看| 中文字幕日韩在线观看| 欧美激情国内偷拍| 精品美女久久久久久免费| 欧美激情va永久在线播放| 国产精品欧美一区二区三区奶水| 欧美另类在线播放| 欧洲一区二区视频| 国产精品夜色7777狼人| 日韩精品在线观看一区二区| 国语自产精品视频在免费| 45www国产精品网站| 国产免费一区二区三区在线观看| 日韩av日韩在线观看| 韩国视频理论视频久久| 日韩av在线导航| 国产精品美女主播|