gpt4 book ai didi

c# - 静态类/方法 this 和泛型

转载 作者:行者123 更新时间:2023-11-30 14:38:54 27 4
gpt4 key购买 nike

所以我有一个特定的方法我想在 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);
}

问题是并不是我需要运行它的每个列表都是 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);
}

关于c# - 静态类/方法 this 和泛型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7121276/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com