ReDim 后初始化数组
Initialize Array after ReDim
有更好的方法吗?我不需要保留数组中的数据。
ReDim Test(4)
For i = 0 to Test.Count()-1
Test(i) = New MyObject
Next
如果您如下所示填充数组,则 ReDim
不是必需的。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim Test1() As Integer
Test1 = {0, 1, 2, 3}
For Each i In Test1
Debug.Print(i.ToString)
Next
Dim Test2() As Coffee
'I have a Coffee class with a parameterized constructor
Test2 = {New Coffee("Folgers", 0), New Coffee("Pete's", 1), New Coffee("Tully's", 2), New Coffee("Green Mountain", 3)}
For Each c In Test2
Debug.Print(c.Name)
Next
End Sub
我找到了我要找的东西
test = Enumerable.Repeat(New MyObject, 4)
编辑:
那不是我想要的,因为它只是创建相同的对象。这就是我要找的。
test = Enumerable.Range(1,4).Select(Function(i) New MyObject()).ToArray
有更好的方法吗?我不需要保留数组中的数据。
ReDim Test(4)
For i = 0 to Test.Count()-1
Test(i) = New MyObject
Next
如果您如下所示填充数组,则 ReDim
不是必需的。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim Test1() As Integer
Test1 = {0, 1, 2, 3}
For Each i In Test1
Debug.Print(i.ToString)
Next
Dim Test2() As Coffee
'I have a Coffee class with a parameterized constructor
Test2 = {New Coffee("Folgers", 0), New Coffee("Pete's", 1), New Coffee("Tully's", 2), New Coffee("Green Mountain", 3)}
For Each c In Test2
Debug.Print(c.Name)
Next
End Sub
我找到了我要找的东西
test = Enumerable.Repeat(New MyObject, 4)
编辑: 那不是我想要的,因为它只是创建相同的对象。这就是我要找的。
test = Enumerable.Range(1,4).Select(Function(i) New MyObject()).ToArray