我在想如果我的方法比较字符串数组(或任何简单的类型)是否有任何性能影响。比较数组的一种方法
bool AreValuesEqual(List<string> oldFieldValue, List<string> newFieldValue)
{
if (oldFieldValue.Count != newFieldValue.Count)
return false;
var list1 = oldFieldValue;
list1.AddRange(newFieldValue);
var list2 = list1.Distinct();
return list2.Count() == newFieldIds.Count;
}
我不知道多少密集的Distinct()将用于此,但我认为它不应该太多太多与另一个循环相比。
编辑 - 对不起,应该提供了更多的背景资料。几件事:
- 参数数组中不会有重复。
- 我没有真正关心顺序,我只想知道一个数组中的值是否与另一个数组相同。如果另一个数组具有不同的值,则返回false。
您是否知道SequenceEquals扩展?要获得您的功能,您首先必须订购这些清单。 – 2009-09-15 17:17:58
也可以,你可能想检查null。 – 2009-09-15 18:45:16