比较两个字符串ArrayLists

时间:2010-10-07 20:39:35

标签: vb.net arrays comparison

我有两个数组列表

  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")

我想找出Colors1中找到的Colors2缺少哪些颜色

2 个答案:

答案 0 :(得分:6)

使用Except方法查看。 “这个方法首先返回那些没有出现在第二个元素中的元素。它不会在第二个元素中返回那些没有出现在第一个元素中的元素。”

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

编辑:我的意思是你可以先将颜色1和第二颜色2作为第二种颜色。

EDIT2 :(每个肖恩)

var missingFrom2 = colors1.Except(colors2);

答案 1 :(得分:1)

为了完整起见,我会添加老式的方式。

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