繁体   English   中英

一步创建ArrayList

[英]Create ArrayList in one step

我极力地尝试使用Visual Studio 2012C#中 一步 创建一个枚举对象之外的ArrayList 它看起来应该如下所示:

new ArrayList( {class1.enum.sample1, class1.enum.sample2, class1.enum.sample3} );

当我用两行代码编写时,它可以工作:

class1.enum[] array = {class1.enum.sample1, class1.enum.sample2, class1.enum.sample3};
ArrayList test = new ArrayList(ha);

但是我需要写成一行。 请问你能帮帮我吗?

您需要另一个集合(如数组)才能使用集合初始化程序

var al = new ArrayList { new[] { class1.enum.sample1, class1.enum.sample2, class1.enum.sample3 } };

但是没有理由再使用旧的ArrayList了。 在这种情况下,您可以使用List<class1.enum> (除了enum是关键字的事实)。

数组列表初始化程序不需要括号() 您可以像下面这样在一行中进行初始化。

ArrayList test = new ArrayList{class1.enum.sample1, class1.enum.sample2, class1.enum.sample3} 

除非您有充分的理由使用Arraylist,否则应将数组列表替换为通用列表。 您可以在MSDN上的Generics of Generics中找到有关使用泛型列表的更多信息

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM