代码之家  ›  专栏  ›  技术社区  ›  zeroef

比较两个字符串数组列表

  •  3
  • zeroef  · 技术社区  · 15 年前

    我有两个数组列表

      dim Colors1 = New ArrayList
      Colors1.Add("Blue")
      Colors1.Add("Red")
      Colors1.Add("Yellow")
      Colors1.Add("Green")
      Colors1.Add("Purple")
    
      dim Colors2 = New ArrayList
      Colors2.Add("Blue")
      Colors2.Add("Green")
      Colors2.Add("Yellow")
    

    我想知道在颜色1中找到的颜色2中缺少哪些颜色

    2 回复  |  直到 15 年前
        1
  •  6
  •   spinon    15 年前

    看使用 Except 方法。此方法返回第一个中不出现在第二个中的元素。它也不会在第二个元素中返回那些不在第一个元素中出现的元素。”

    所以你可以把颜色2作为第一个参数,把颜色1作为第二个参数。

    编辑:我的意思是你可以把颜色1放在第一位,把颜色2放在第二位。

    编辑2:(每肖恩)

    var missingFrom2 = colors1.Except(colors2);
    
        2
  •  1
  •   egrunin    15 年前

    为了完整起见,我将添加老式方法。

    List<string> result = new List<string>();
    
    foreach (string s in Colors1)
        if (Colors2.Contains(s) == false)
            result.add(s);
    
    // now result has the missing colors