为什么数组初始值设定项仅适用于数组?
问题描述:
可能重复:
Collection initialization syntax in Visual Basic 2008?为什么数组初始值设定项仅适用于数组?
这并不编译。
Dim Tom As New List(Of String) = {"Tom", "Tom2"}
这确实
Dim Tom As String() = {"Tom", "Tom2"}
IMO这个功能应该允许所有的集合类型,而不仅仅是阵列。
答
你不能在Visual Basic的当前版本中做到这一点,但在Visual Studio 2010的下一版本允许这样的语法:
Dim Tom As List(Of String) = new List(Of String) From {"Tom", "Tom2"}
它使用new From keyword。另一方面,C#在Visual Studio 2008中包含了它的集合初始化器语法。您可以阅读关于它的文档。Object and Collection Initializers (C# Programming Guide)(MSDN)。
无法在VB.NET中完成。 C#确实有'var k = new列表 {“1”,“2”,“3”};'但在VB.NET中没有直接的等价物。 –
2010-03-01 20:42:42