📅  最后修改于: 2023-12-03 15:30:18.115000             🧑  作者: Mango
在C#中,要比较两个OrderedDictionary对象是否相等,需要比较它们中的每一个元素是否相等。OrderedDictionary是一个键值对集合,其中的元素按照添加的顺序排列。
以下是比较两个OrderedDictionary对象是否相等的示例代码:
using System.Collections.Specialized;
OrderedDictionary dict1 = new OrderedDictionary();
dict1.Add("key1", "value1");
dict1.Add("key2", "value2");
OrderedDictionary dict2 = new OrderedDictionary();
dict2.Add("key1", "value1");
dict2.Add("key2", "value2");
bool isEqual = dict1.Cast<DictionaryEntry>().SequenceEqual(dict2.Cast<DictionaryEntry>());
if (isEqual)
{
Console.WriteLine("dict1 and dict2 are equal");
}
else
{
Console.WriteLine("dict1 and dict2 are not equal");
}
在上面的代码中,我们首先创建了两个OrderedDictionary对象,然后使用SequenceEqual方法比较它们中的元素是否相等。SequenceEqual方法是LINQ扩展方法,用于比较两个集合中的元素是否相等。
在比较时,我们使用了Cast方法将OrderedDictionary转换为IEnumerable
总之,要比较两个OrderedDictionary对象是否相等,需要比较它们中的每一个元素是否相等。可以使用LINQ扩展方法SequenceEqual来比较元素是否相等。