繁体   English   中英

比较 C# 中的 2 个字符串列表时找不到丢失的字符串

[英]Cannot find the missing strings when comparing 2 lists of strings in C#

我有 2 个需要比较的列表。 我认为使用“除外”功能会起作用,但是当我这样做时,我的新列表中没有任何内容。 这是示例代码:

unmathced = original.Except(new).ToList();

我试图找出新列表中遗漏了哪些字符串。 所有列表都已正确初始化,我已将问题缩小到无法正确填充我的“不匹配”列表。 有没有其他方法可以在“原始”中找到不在“新”中的项目?

        List<string> str1 = new List<string>();
        str1.Add("January");
        str1.Add("February");

        List<string> str2 = new List<string>();
        str2.Add("February");
        str2.Add("March");

        var union = str1.Union(str2).ToList(); // jan ,feb ,march
        var intersect = str1.Intersect(str2).ToList(); // feb
        var unMatchItems = union.Except(intersect).ToList();
        
        Print(unMatchItems); // Console => January , March

static void Print(List<string> list)
    {
        foreach (var item in list)
        {
            Console.WriteLine(item);
        }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM