列表和集合的通用约束

问题描述 投票:0回答:1

我有一个通用方法,看起来像这样:

public int GetCount<T>(T collection) where T: ICollection
{
   return collection.Count;    
}

现在,我希望能够调用此方法,其中collection参数可以是List<T>HashSet<T>。当前代码无法满足要求,因为我要传递的参数不会继承ICollection接口。现在,有什么方法可以通过简单的约束来实现?

c# generics constraints generic-constraints
1个回答
2
投票
public int GetCount<T>(ICollection<T> collection) { return collection.Count; }
© www.soinside.com 2019 - 2024. All rights reserved.