可以在一个语句中使用String键/值对创建和初始化
System.Collections.Generic.Dictionary
对象吗?
我正在考虑一系列Strings的构造函数。
例如
Private mStringArray As String() = {"String1","String2","etc"}
如果这被证明是syntactic sugar类的东西,我更喜欢一个答案,我可以在.Net 2.0(Visual Studio 2005)和Visual Basic中使用 – 虽然我很好奇,如果可能的话,所以,所以,不要让你失望; o)
我不认为有一种方法可以在VB.NET 2中开箱即用,但是您可以扩展通用字典,使其按照您想要的方式工作。
下面的控制台应用程序说明了这一点:
Imports System.Collections.Generic Module Module1 Sub Main() Dim items As New FancyDictionary(Of Integer,String)(New Object(,) {{1,"First Item"},{2,"Second Item"},{3,"Last Item"}}) Dim enumerator As FancyDictionary(Of Integer,String).Enumerator = items.GetEnumerator While enumerator.MoveNext Console.WriteLine(String.Format("{0} : {1}",enumerator.Current.Key,enumerator.Current.Value)) End While Console.Read() End Sub Public Class FancyDictionary(Of TKey,TValue) Inherits Dictionary(Of TKey,TValue) Public Sub New(ByVal InitialValues(,) As Object) For i As Integer = 0 To InitialValues.GetLength(0) - 1 Me.Add(InitialValues(i,0),InitialValues(i,1)) Next End Sub End Class End Module