比较2个列表与特定字符串

时间:2019-02-20 08:20:11

标签: c# list

comparestring1 && comparestring2上出现红线,为什么?

    List<string> comparestring1 = new List<string>();
    List<string> comparestring2 = new List<string>();

    foreach(string comparefinal in constrings)
    {
      if(comparestring1 && comparestring2 = "WORKING")
      {

      }
    }

2 个答案:

答案 0 :(得分:0)

因此,基本上,您只想检查两个列表中是否都存在特定的字符串。您可以像这样使用Linq

var data = constrings.Where(x => comparestring1.Contains(x) && comparestring2.Contains(x))
                     .ToList();

您发布的代码在语法上和语义上都是错误的。因此红线。而且,不确定在另一个列表的每次迭代中检查硬编码字符串有什么意义。无论如何,您使用Linq using System.Linq

发布的代码应如下所示
bool result = comparestring1.Any(x => x == "WORKING" && comparestring2.Contains(x))

答案 1 :(得分:0)

        List<string> comparestring1 = new List<string>();
        List<string> comparestring2 = new List<string>();
        int i = 0;
        foreach (string comparefinal in constrings)
        {

            if (comparestring1[i] == "WORKING" && comparestring2[i] == "WORKING")
            {

            }
            i++;
        }

尝试一下?您必须从要比较的列表中选择索引。您需要为“串”定义吗?