c# List取交集並集差集的方法


1.取交集

public void Intersection()
{
    List<string> list1 = new List<string> { "AA", "BB", "CC", "EE", "GG" };
    List<string> list2 = new List<string> { "BB", "DD", "GG", "MM" };
    List<string> list3 = new List<string>();
    list3 = list1.Intersect(list2).ToList();
 
    Console.Write(list3.Count);  //交集的個數,如果個數為0,說明沒有交集
    Console.WriteLine();
    foreach (var s in list3)      // 各個值
    {
        Console.Write(s);
        Console.WriteLine();
    }
}

結果:BB GG

2.取差集

public void Exception()
{
    List<string> list1 = new List<string> { "AA", "BB", "CC", "EE", "GG" };
    List<string> list2 = new List<string> { "BB", "DD", "GG", "MM" };
    List<string> list3 = new List<string>();
    list3 = list1.Except(list2).ToList();
    foreach (var s in list3)      // 各個值
    {
        Console.Write(s);
        Console.WriteLine();
    }
}

結果:DD MM

3.取並集

public void Union()
{
    List<string> list1 = new List<string> { "AA", "BB", "CC", "EE", "GG" };
    List<string> list2 = new List<string> { "BB", "DD", "GG", "MM" };
    List<string> list3 = new List<string>();
    list3 = list1.Union(list2).ToList();
    foreach (var s in list3)      // 各個值
    {
        Console.Write(s);
        Console.WriteLine();
    }
}

結果:AA BB CC EE GG DD MM



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM