2011-12-13 28 views
0

我有两个长度不同的ArrayList。一个包含ints,另一个包含包含int字段的对象。我想检查int列表中的任何值是否显示为第二个列表中任何对象中int字段的值:例如。如果从不带LINQ的int字段的ArrayList对象的ArrayList中查找整数值的值

intList[i] == objList[j].value 

对于任何我或j。

我使用.NET 2.0,所以我不能使用LINQ。谢谢!

+3

您应该使用通用列表。 – SLaks

+0

您可以使用Linq到LinqBridge的对象 - http://code.google.com/p/linqbridge/ – DaveShaw

回答

0

由于HashSet<int>在2.0中不存在(如果我没记错的话)使用Dictionary。

Dictionary<int, object> dic = new Dictionary<int, object>(objList.Count); 
foreach (object obj in objList) 
    dic.Add(obj.value, null); 
bool found = false; 
foreach (int i in intList) 
{ 
    if(dic.ContainsKey(i)) 
    { 
     found = true; 
     break; 
    } 
} 
+0

不得不更改“var”,因为它不在2.0中,但其他情况下可以正常工作。谢谢! – Mourndark

相关问题