将在“SetEquals”中为元素执行哪个相等性检查

本文关键字:检查 执行 元素 SetEquals 将在 | 更新日期: 2023-09-27 18:19:25

我们有SetEquals方法来检查不同的集合类型是否相等。但是,将对元素执行什么样的相等性测试?会使用Equals还是ReferenceEquals

在API中,它只是声明:

确定当前集合和指定的集合包含相同的元素

将在“SetEquals”中为元素执行哪个相等性检查

它是"集合用于考虑元素相等的一个",即与AddContains使用的相同。例如:

var set = new HashSet<string>(StringComparer.OrdinalIgnoreCase)
{
    "abc", "def"
};
var list = new List<string> { "ABC", "DEF" };
Console.WriteLine(set.SetEquals(list)); // True