【发布时间】:2012-05-31 13:57:09
【问题描述】:
我的问题是这样的: c# list compare
但唯一需要注意的是:
我正在使用 .NET Framework 2.0
那么如何比较 C# 框架 2 上的两个列表并在项目不同时返回布尔值?
instance == anotherone fails
instance.Equals(anotherone) fails.
编辑:
它们都是列表
编辑 2
我正在尝试比较列表值是否准确。我可以对它们进行排序,为此。问题是项目的计数或值是否发生变化。例如:
List1->Item1 = "A"
List1->Item2 = "B"
List2->Item1 = "B"
List2->Item2 = "A"
//must return true
List1->Item1 = "A"
List1->Item2 = "B"
List2->Item1 = "B"
List2->Item2 = "C"
//must return false
List1->Item1 = "A"
List1->Item2 = "B"
List2->Item1 = "B"
List2->Item2 = "A"
List2->Item3 = "A"
//must return false, etc.
感谢和亲切的问候。
【问题讨论】:
-
有哪些类型?你定义的类实例?资料不够,请写详细点
-
您是否关心列表中项目的顺序,或者如果它们包含相同的项目,两个列表是否相等,无论顺序如何?
-
我不在乎顺序,因为如果需要比较,我可以先对它们进行排序。我正在寻找是否有任何被添加和/或删除和/或更新为另一个值。
-
@Leandro:不,不要事先排序。您将问题从
O(n)复杂性之一转变为O(n log n)复杂性之一。
标签: c# object arraylist .net-2.0