Collection initialization syntax in Visual Basic 2

2019-01-12 05:18发布

问题:

I'm trying to determine if there's a way in Visual Basic 2008 (Express edition if that matters) to do inline collection initialization, a la JavaScript or Python:

Dim oMapping As Dictionary(Of Integer, String) = {{1,"First"}, {2, "Second"}}

I know Visual Basic 2008 supports array initialization like this, but I can't seem to get it to work for collections... Do I have the syntax wrong, or is it just not implemented?

回答1:

Visual Basic 9.0 doesn't support this yet. However, Visual Basic 10.0 will.



回答2:

Here are VB collection initializers using the From keyword. (Starting with Visual Studio 2010)

List:

Dim list As New List(Of String) From {"First", "Second"}

Dictionary:

Dim oMapping As New Dictionary(Of Integer, String) From {{1, "First"}, {2, "Second"}}