Vb.net 如何使用List(Of List(Of Byte))调整多维数组的大小

Vb.net 如何使用List(Of List(Of Byte))调整多维数组的大小,vb.net,list,multidimensional-array,Vb.net,List,Multidimensional Array,我有这种代码。 每次调用之前的方法时,它都应该将数组的大小调整1。。但是对于多维数组来说这是不可能的,因为您会发现这样一个错误,即“ReDim”只能更改最右边的维度。 我研究的建议是使用列表(字节列表) 但我仍然不知道如何使用它,似乎每次我都必须不断创建新的列表对象,任何建议都会有所帮助 Dim adjMatrix As Byte(,) Dim setDimensions As Boolean = False Public Sub connectNode(ByVal start As Node

我有这种代码。
每次调用之前的方法时,它都应该将数组的大小调整1。。但是对于多维数组来说这是不可能的,因为您会发现这样一个错误,即“ReDim”只能更改最右边的维度。

我研究的建议是使用
列表(字节列表)

但我仍然不知道如何使用它,似乎每次我都必须不断创建新的列表对象,任何建议都会有所帮助

Dim adjMatrix As Byte(,)
Dim setDimensions As Boolean = False

Public Sub connectNode(ByVal start As Node, ByVal endd As Node)
    'This method will be called to make connect two nodes
    If setDimensions = False Then
        ReDim Preserve adjMatrix(999 - 1, 999)
        setDimensions = True
    End If
    Dim startIndex As Integer = nodes.IndexOf(start)
    Dim endIndex As Integer = nodes.IndexOf(endd)
    adjMatrix(startIndex, endIndex) = 1
    adjMatrix(endIndex, startIndex) = 1
End Sub
我还必须访问它,比如,如何使用List(Of List)(Of Byte)来访问它


对于使用列表,您必须重写您的逻辑。您试图实现的是什么?我正在尝试使用深度优先搜索,代码非常有效,但我不断添加新的节点连接,并且必须重新调整adjMatrix以支持新的节点endIndex。尝试使用2个一维数组。在列表中遍历将很困难。
a List(字节的列表)
-你了解它的结构吗?每个元素都是一个
字节的列表
每个元素都可以有不同数量的元素-一个锯齿数组(旧术语)?(字符串,字节的列表)是否更适合?不确定开销成本,但听起来您可以使用treeview类。您可以将其用于树结构而不显示它,但如果您发现需要显示它,它已经为此进行了组织。此外,它非常动态,您可以添加、删除或更改任何需要的内容。
If adjMatrix(index, j) = 1 Then
'Do stuff
End If