Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 比较两个字符串数组列表_Vb.net_Arrays_Comparison - Fatal编程技术网

Vb.net 比较两个字符串数组列表

Vb.net 比较两个字符串数组列表,vb.net,arrays,comparison,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

我有两个数组列表

  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作为第一个参数,把颜色1作为第二个参数

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

编辑2:(佩尔肖恩)


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

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
列表结果=新列表();
foreach(彩色字符串s 1)
if(Colors2.Contains)==false)
结果。添加(s);
//现在结果中缺少了颜色

+1以前从未注意到这一点。(注意:需要.NET3.5或更高版本)@egruni是一个很好的观点。谢谢你提到那件事。这是Linq扩展方法的一部分。我只想补充一点,因为答案可能会令人困惑,您可以编写类似于“var missingFrom2=colors1.Except(colors2);”的内容@肖恩,谢谢你的例子。只要我们有一个例子,它总是有帮助的。如果我没有运行.NET版本2.0.50727.3053,那么+1对于anwer是有效的
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