欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C# list<T>去重的實(shí)現(xiàn)

 更新時(shí)間:2023年12月14日 09:15:01   作者:懶人咖  
List集合在開發(fā)過程中很常見,經(jīng)常我們要對該集合進(jìn)行一系列操作,本文主要介紹了C# list<T>去重的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下

值類型去重

List<object>

object is int

//object is int
   List<object> ointList = new List<object>();
   ointList.Add(1);
   ointList.Add(1);
   ointList.Add(2);
   ointList = ointList.Distinct().ToList();

在這里插入圖片描述

object is decimal

//object is decimal
            List<object> odecimalList = new List<object>();
            odecimalList.Add(1.25);
            odecimalList.Add(1.25);
            odecimalList.Add(2.25);
            odecimalList = odecimalList.Distinct().ToList();

在這里插入圖片描述

object is char

            //object is char
            List<object> ocharList = new List<object>();
            ocharList.Add('a');
            ocharList.Add('a');
            ocharList.Add('b');
            ocharList = ocharList.Distinct().ToList();

在這里插入圖片描述

object is bool

            //object is bool
            List<object> oboolList = new List<object>();
            oboolList.Add(true);
            oboolList.Add(false);
            oboolList.Add(true);
            oboolList = oboolList.Distinct().ToList();

在這里插入圖片描述

object is string

            //object is string
            List<object> osList = new List<object>();
            osList.Add("1");
            osList.Add("1");
            osList.Add("2");
            osList = osList.Distinct().ToList();

在這里插入圖片描述

List<int>

            List<int> intList = new List<int>();
            intList.Add(1111);
            intList.Add(1111);
            intList.Add(2222);
            intList = intList.Distinct().ToList();

在這里插入圖片描述

List<string>

            List<string> idList = new List<string>();
            idList.Add("1111");
            idList.Add("1111");
            idList.Add("2222");  
            idList = idList.Distinct().ToList();

在這里插入圖片描述

引用類型去重

private class NetworkCtrl
        {

            #region <屬性>

            /// <summary>
            /// 網(wǎng)控對象ID
            /// </summary>
            public string NetCtrlId { get; set; }

            /// <summary>
            /// 業(yè)務(wù)對象ID
            /// </summary>
            public string InterID { get; set; }

            /// <summary>
            /// 業(yè)務(wù)操作
            /// </summary>
            public string OperationDesc { get; set; }
            #endregion <屬性>

        }
List<NetworkCtrl> ncList = new List<NetworkCtrl>();
            ncList.Add(new NetworkCtrl
            {
                InterID = "100148",
                NetCtrlId = "9cc2c432-56a9-b38d-11ee-794e3a9853e2",
                OperationDesc = "售后單-SH231103001-下推其它出庫單"
            });
            ncList.Add(new NetworkCtrl
            {
                InterID = "100149",
                NetCtrlId = "9cc2c432-56a9-b38d-11ee-794e3a9853e2",
                OperationDesc = "售后單-SH231103002-下推其它出庫單"
            });
            ncList.Add(new NetworkCtrl
            {
                InterID = "100148",
                NetCtrlId = "9cc2c432-56a9-b38d-11ee-794e3a9853e2",
                OperationDesc = "售后單-SH231103001-下推其它出庫單"
            });
            var ncList1 = ncList.Distinct().ToList();
            var ncList2 = ncList.GroupBy(x => x.InterID).Select(y => y.First()).ToList();

集合里有三條記錄,其中兩條重復(fù)。

在這里插入圖片描述

使用Distinct后,還有三條,說明distinct失敗

在這里插入圖片描述

原因是,引用類型即使屬性一樣,引用地址是不一樣的。
只能用別的方式去避免。

在這里插入圖片描述

到此這篇關(guān)于C# list<T>去重的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)C# list<T>去重內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • C#自定義集合初始化器

    C#自定義集合初始化器

    這篇文章介紹了C#自定義集合初始化器的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • 讀取圖片像素的具體實(shí)例

    讀取圖片像素的具體實(shí)例

    C#讀取圖片像素的具體實(shí)例,需要的朋友可以參考一下
    2013-06-06
  • C#實(shí)現(xiàn)appSettings節(jié)點(diǎn)讀取與修改的方法

    C#實(shí)現(xiàn)appSettings節(jié)點(diǎn)讀取與修改的方法

    這篇文章主要介紹了C#實(shí)現(xiàn)appSettings節(jié)點(diǎn)讀取與修改的方法,是非常實(shí)用的技巧,需要的朋友可以參考下
    2014-10-10
  • C# using的本質(zhì)及使用詳解

    C# using的本質(zhì)及使用詳解

    這篇文章主要為大家介紹了C# using的本質(zhì)及使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • C#實(shí)現(xiàn)判斷操作系統(tǒng)是否為Win8以上版本

    C#實(shí)現(xiàn)判斷操作系統(tǒng)是否為Win8以上版本

    這篇文章主要介紹了C#實(shí)現(xiàn)判斷操作系統(tǒng)是否為Win8以上版本,本文講解了利用C#獲取OS的版本號、利用反射獲取當(dāng)前正在運(yùn)行的程序的版本信息、 利用C#判斷當(dāng)前操作系統(tǒng)是否為Win8系統(tǒng)等內(nèi)容,需要的朋友可以參考下
    2015-06-06
  • C# GUID ToString的使用總結(jié)

    C# GUID ToString的使用總結(jié)

    這篇文章主要介紹了C# GUID ToString的使用總結(jié),幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2021-02-02
  • C#中static void Main(string[] args) 參數(shù)示例詳解

    C#中static void Main(string[] args) 參數(shù)示例詳解

    這篇文章主要介紹了C#中static void Main(string[] args) 參數(shù)詳解,本文通過具體示例給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2017-03-03
  • C#實(shí)現(xiàn)冒泡排序和插入排序算法

    C#實(shí)現(xiàn)冒泡排序和插入排序算法

    這篇文章介紹了C#實(shí)現(xiàn)冒泡排序和插入排序算法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • C#集合查詢Linq在項(xiàng)目中使用詳解

    C#集合查詢Linq在項(xiàng)目中使用詳解

    本文主要介紹了C#集合查詢Linq在項(xiàng)目中使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • C#處理和對接HTTP接口請求的方法

    C#處理和對接HTTP接口請求的方法

    下面通過四步給大家介紹了c#處理和對接http接口請求的方法,分步驟介紹的非常詳細(xì),具有參考借鑒價(jià)值,感興趣的朋友一起看下吧
    2016-08-08

最新評論