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

C#中判斷一個集合是否是另一個集合的子集的簡單方法

 更新時間:2016年04月10日 09:15:23   作者:Darren Ji  
本文介紹利用C#中內(nèi)置的系統(tǒng)函數(shù)判斷一個集合是否是一個集合的子集的方法,此方法代碼量極少,分享給大家。

看到這個標題,我們首先想到的是循環(huán)遍歷其中一個數(shù)組,判斷數(shù)組中的每個元素是否都在另一個數(shù)組中出現(xiàn)了,以此來判斷該數(shù)組是不是另一個數(shù)組的子集,但是這樣做就太過復雜了,有沒有簡單一點的方法呢?

打個比方,有這樣的兩個集合:

復制代碼 代碼如下:
string[] bigArr = new string[] { "a", "b", "c" };
string[] smallArr = new string[] { "a", "b"};

現(xiàn)在需要判斷smallArr是否是bigArr的子集。只要拿著bigArr和smallArr比較,求差集,如果差集的個數(shù)大于0,就說明smallArr是bigArr的子集。

復制代碼 代碼如下:
//在大集合的基礎(chǔ)上,根據(jù)小集合獲取大集合的差集
var exceptArr = bigArr.Except(smallArr);
//判斷是否是子集
if(exceptArr.Any())
{
    Console.WriteLine("samllArr 是 bigArr的一個子集");
}
else
{
    Console.WriteLine("samllArr 不是 bigArr的一個子集");
}

以上的方式,只能判斷是否是子集,即是子集的那個集合元素永遠小于大的那個集合。 

有時候,還存在這樣的需求:判斷bigArr是否包含smallArr,即smallArr可以是bigArr的子集,也可以和bigArr是一樣的。

復制代碼 代碼如下:
//判斷是否是子集或2個集合一樣
if(smallArr.All(t => bigArr.Any(b => b==t)))
{
    Console.WriteLine("samllArr 是 bigArr的一個子集或一樣");
}
else
{
    Console.WriteLine("samllArr 不是 bigArr的一個子集或一樣");
}

相關(guān)文章

  • C#利用WMI操作DNS服務器(可遠程操作,需要相應權(quán)限)

    C#利用WMI操作DNS服務器(可遠程操作,需要相應權(quán)限)

    C#利用WMI操作DNS服務器(可遠程操作,需要相應權(quán)限)...
    2007-03-03
  • winform下實現(xiàn)win7 Aero磨砂效果實現(xiàn)代碼

    winform下實現(xiàn)win7 Aero磨砂效果實現(xiàn)代碼

    winform下實現(xiàn)win7 Aero磨砂效果實現(xiàn)代碼,需要的朋友可以參考下
    2012-03-03
  • C#軟件注冊碼的實現(xiàn)代碼

    C#軟件注冊碼的實現(xiàn)代碼

    開發(fā)軟件時,當用到商業(yè)用途時,注冊碼與激活碼就顯得很重要了。現(xiàn)在的軟件破解技術(shù)實在在強了,各種國內(nèi)外大型軟件都有注冊機制,但同時也不斷地被破解。下面發(fā)的只是一個常用版本,發(fā)出源碼被破就更容易了,但我們學習的是技術(shù)。當然也為以后自己的軟件不會被輕易破解。
    2013-05-05
  • 詳解Unity安卓共享紋理

    詳解Unity安卓共享紋理

    本文主要介紹了Unity安卓共享紋理,對此感興趣的同學,可以參考下,親自實驗一下,理解其原理。
    2021-05-05
  • 詳解C#之委托

    詳解C#之委托

    這篇文章主要介紹了C#委托的含義以及用法,文中代碼非常詳細,幫助大家更好的理解和學習
    2020-06-06
  • C#中IEnumerable接口用法實例分析

    C#中IEnumerable接口用法實例分析

    這篇文章主要介紹了C#中IEnumerable接口用法,實例分析了IEnumerable接口的功能與使用技巧,需要的朋友可以參考下
    2015-04-04
  • C#簡單實現(xiàn)SNMP的方法

    C#簡單實現(xiàn)SNMP的方法

    這篇文章主要介紹了C#簡單實現(xiàn)SNMP的方法,通過一個簡單的自定義類分析了C#實現(xiàn)SNMP的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • c# this關(guān)鍵字用法代碼詳解

    c# this關(guān)鍵字用法代碼詳解

    在本篇文章里小編給大家整理的是關(guān)于c# this關(guān)鍵字用法以及相關(guān)實例代碼,有興趣的朋友們可以學習下。
    2020-02-02
  • C#實現(xiàn)小截屏軟件功能

    C#實現(xiàn)小截屏軟件功能

    這篇文章主要為大家詳細介紹了C#實現(xiàn)截圖軟件功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • 初學C#所需明白的那些點

    初學C#所需明白的那些點

    這篇文章主要介紹了初學C#所需明白的那些點,以及一些零碎知識點筆記,以供大家學習參考
    2023-03-03

最新評論