在编译时使用值创建 List

2024-04-08

可以在编译时创建一个数组,例如;

int[] myValues = new int[] { 1, 2, 3 } ;

但我想做这样的事情;

List<int> myValues = new List<int>() { 1, 2, 3 };

编译器说“否”。有没有办法在不使用 LINQ (C# 3.0) 的情况下执行此操作 (C# 2.0)?


List<int> myValues = new List<int>(new int[] { 1, 2, 3 } );

然而,这将创建一个中间数组,因此可能有一种更有效的方法来做同样的事情。

EDIT:

John Feminella 建议创建一个工厂方法来接受参数列表并返回一个 List,您可以按如下方式实现:

List<T> CreateList<T>(params T[] values)
{
    return new List<T>(values);
}

您可以按如下方式使用:

List<int> myValues = CreateList(1, 2, 3);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在编译时使用值创建 List 的相关文章

随机推荐