Vb.net 声明多维数组

Vb.net 声明多维数组,vb.net,multidimensional-array,Vb.net,Multidimensional Array,我想循环到一个数组中并填充一些数据。但是我还没有发现,当我事先不知道宽度时,如何声明多维数组 这是我现在拥有的 Dim Items()() As String For y As Integer = 0 To object.Count - 1 Items(y)(0) = "something" Items(y)(1) = "something" Items(y)(2) = "something"

我想循环到一个数组中并填充一些数据。但是我还没有发现,当我事先不知道宽度时,如何声明多维数组

这是我现在拥有的

Dim Items()() As String
        For y As Integer = 0 To object.Count - 1
            Items(y)(0) = "something"
            Items(y)(1) = "something"
            Items(y)(2) = "something"
            Items(y)(3) = "something"
            Items(y)(4) = "something"
            Items(y)(5) = "something"
            Items(y)(6) = "something"
 Next
有人建议我用(X,X)来做,但我不知道如何在没有宽度的情况下声明它。
我应该怎么做?

看起来您需要一个二维数组来跟踪多个字符串数组。如果您知道将拥有的阵列总数,可以执行以下操作:

Dim Items(object.Count - 1, 6) As String
For y As Integer = 0 To object.Count - 1
    Items(y, 0) = "something"
    Items(y, 1) = "something"
    Items(y, 2) = "something"
    Items(y, 3) = "something"
    Items(y, 4) = "something"
    Items(y, 5) = "something"
    Items(y, 6) = "something"
Next
老实说,最好使用
列表(列表(字符串))
,因为多维数组在初始化时必须声明第一个索引的上限。第二个索引上限可以重新定义

使用列表设置类似于:

Dim Items As New List(Of List(Of String))
For y As Integer = 0 To object.Count - 1
    Dim tmpList As New List(Of String)
    tmpList.Add("something")
    tmpList.Add("something")
    tmpList.Add("something")
    tmpList.Add("something")
    tmpList.Add("something")
    tmpList.Add("something")
    tmpList.Add("something")
    Items.Add(tmpList)
Next

或者,更好的是,正如上面注释中提到的那样,如果可能的话,创建一个类来保存进入内部列表或数组的7个(或多个)值,那么您只需要一个
列表(字符串)
来保存每个实例。

您声明的是一个锯齿数组,其中建议您创建一个2d数组,。在@Shar1er80的评论中添加更多链接,您声明的是a,建议您创建一个。您是否想过使用(某个类的)列表来代替?特别是当每个“某物”代表不同的属性时。多维数组上的+1(如果这是您真正想要的);这是声明/使用它的正确格式。