我正在try 确定.NET3.5(C#)中的两个HashSet
个对象是否是相等的集合,i.e.个对象包含相同的值.这似乎是一个人显然想要做的事情,但是所提供的函数似乎都没有为您提供此信息.
我认为这样做的方法是判断两个集合的计数是否等于and,其中一个集合是另一个集合的子集(不正确).我认为唯一可能发生的方法是如果它们是相等的集合.示例代码:
HashSet<int> set1 = new HashSet<int>();
set1.Add(1);
set1.Add(2);
set1.Add(3);
HashSet<int> set2 = new HashSet<int>();
set2.Add(1);
set2.Add(2);
set2.Add(3);
if(set1.Count == set2.Count && set1.IsSubsetOf(set2))
{
// do something
}
这会一直奏效吗?有没有更好的方法?为什么HashSet
没有public bool IsEqualSetWith()
的功能呢?