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