Reputation: 6109
In c# I can initialize a List at creation time like
var list = new List<String>() {"string1", "string2"};
is there a similar thing in VB.Net? Currently I can do it like
Dim list As New List(Of String)
list.Add("string1")
list.Add("string2")
list.Add("string3")
but I want to avoid boring .Add lines
Upvotes: 15
Views: 23378
Reputation: 55009
Dim a As New List(Of String)(New String() {"str1", "str2"})
Though if it's VB 2010 I'd definitely go with Jon Skeet's answer.
Upvotes: 2
Reputation: 1338
You can also use AddRange if you don't want to put all of your items on a single line.
Dim list As New List(Of String) From { "string1", "string2", "string3" }
list.addRange({"string4", "string5", "string6"})
Upvotes: 4
Reputation: 1500735
VB10 supports collection initializers. I believe your example would be:
Dim list As New List(Of String) From { "string1", "string2", "string3" }
Upvotes: 20