Fve*_*ver 3 c# generics static
所以我有一个我想在List上调用的方法(这是我每次在不同文件中运行的通用方法,所以我想把它放在一个静态类中).
方法是这样的:
public static List<Item> GetRangeOrMax(this List<Item> list, int amount)
{
return list.Count < amount ? list.GetRange(0, list.Count) : list.GetRange(0, amount);
}
Run Code Online (Sandbox Code Playgroud)
问题是,我需要运行此列表的每个列表都不是Item类型.我想知道我是否能够使用泛型来解决这个问题?说些什么(这List<T> list...
这里的问题是该方法还必须返回该值,我想继续使用this关键字.如果不可能,我想我将不得不为每种类型使用不同的重载程序.
您可以使用通用扩展方法.
static List<T> GetRangeOrMax<T>(this List<T> list, int amount)
{
return list.Count < amount ? list.GetRange(0, list.Count) : list.GetRange(0, amount);
}
Run Code Online (Sandbox Code Playgroud)