如何在VbScript中创建多维锯齿阵列?

如何在VbScript中创建多维锯齿阵列?,vbscript,jagged-arrays,dynamic-arrays,Vbscript,Jagged Arrays,Dynamic Arrays,我需要创建多维字符串数组。数组的每一行可以有不同数量的字符串。类似于以下代码: twoDimension = Array(Array()) ReDim Preserve twoDimension(3) For i = 0 to 2 If i = 1 Then twoDimension(i) = Array(1,2,3) End If If i = 2Then twoDimension(i) = Array(1,2,3,4,5) End I

我需要创建多维字符串数组。数组的每一行可以有不同数量的字符串。类似于以下代码:

twoDimension = Array(Array())  
ReDim Preserve twoDimension(3)  
For i = 0 to 2  
 If i = 1 Then  
  twoDimension(i) = Array(1,2,3)  
 End If  
 If i = 2Then  
     twoDimension(i) = Array(1,2,3,4,5)  
   End If  
Next  
字典怎么样

Set a = CreateObject("Scripting.Dictionary")
a.Add 0, Array(1,2,3)
a.Add 1, Array(4,5,6)
MsgBox a.Count
MsgBox a.Item(0)(2)
MsgBox a.Item(1)(1)

在VBScript中使用锯齿状数组没有什么错。您的代码存在一些小问题(
ReDim
to 3,但只将值分配给2,不必要地使用
For
循环分配值),但一般来说,这是正确的语法

Option Explicit

Dim twoDimension, i, j

twoDimension = Array(Array())  
ReDim Preserve twoDimension(2)

twoDimension(1) = Array(1,2,3)
twoDimension(2) = Array(1,2,3,4,5)

For i = 0 To UBound(twoDimension)
  For j = 0 To UBound(twoDimension(i))
    WScript.Echo "(" & i & "," & j & ") = " & twoDimension(i)(j)
  Next
Next