首页 > 解决方案 > 检查是否列表存在

问题描述

这是我的代码

List<string> list = new List<string>() { "bfd", "jy", "aaaaa", "ndnk", "ntfn", "gfm", "gfm", "mhgd5h", "srsr", "ntr", "mtmyt", "dmy", "mmy6", "ngn9d", "y6m1", "d8dm", "bbbbb", "tym", "dmj", "trsh", "tsr"};
List<string> test = new List<string>() {"aaaaa","bbbbb","ccccc","ddddd","eeeee","fffff","ggggg" };
           
foreach (var a in list)
{
    foreach (var i in test)
    {
        if (i.StartsWith(a) == false)
        {
            Console.WriteLine(i);
        }
    }
}

我想从列表中输出并在测试中匹配。如果测试存在,则不会显示。如果没有侧面输出,但是我的代码可能有问题,会多次输出相同的值

列表中包含 aaaaa,按逻辑应该不输出 aaaaa

标签: c#list

解决方案


尝试这个:

      List<string> list = new List<string>(){"bfd", "jy", "aaaaa", "ndnk", "ntfn", "gfm", "gfm", "mhgd5h", "srsr", "ntr", "mtmyt", "dmy", "mmy6", "ngn9d", "y6m1", "d8dm", "bbbbb", "tym", "dmj", "trsh", "tsr"};

      List<string> test = new List<string>(){"aaaaa", "bbbbb", "ccccc", "ddddd", "eeeee", "fffff", "ggggg"};

        foreach (var a in list)
        {
            if (!test.Contains(a))
            {
                Console.WriteLine(a);
            }       
        }

推荐阅读