构造函数中使用IEqualityComparer的泛型集合

时间:2011-05-24 13:33:25

标签: c# collections

这样的框架中是否有任何集合?

public class DesiredCollection<T>
{
    public DesiredCollection(IEqualityComparer<T> comparer) 
    {
    }
}

要求:

  • 通用集合;
  • IEqualityComparer或lambda-expression确定相等;
  • 无需定义密钥类型;
  • 按键获取项目;
  • 将所有项目设为IEnumerable。

1 个答案:

答案 0 :(得分:0)

各种集合在其构造函数中使用IEqualityComparer<T>(通常作为一个中的一个重载)。特别是,Dictionary<TKey, TValue>HashSet<T>属于此类别。他们使用相等比较器来检查键/元素是否存在。

但是,除了需要构造函数采用相等比较器之外,您还没有真正表达过任何其他内容。大概你需要更多......你想做什么?