在Javascript中,我们可以执行以下操作来创建二维数组,然后在第一个数组的第一个位置指定一个值。
var some_array = [[]]
x[0] = ["a", "b", "c"]
我已经看到这在VB.NET本身无法完成(或者我可能找不到如何)。
Dim some_array As String(,)
some_array(0) = {"a", "b", "c"}
然后我得到一个错误,告诉我没有指定数组的两个维度。
有没有办法在VB NET中实现这一点?
答案 0 :(得分:3)
Javascript没有多维数组。相反,它有一个数组数组,也就是锯齿状数组。在vb.net中,二维数组的字符串定义如下:dim mystring(,) as string
,而锯齿状的字符串数组定义如下:dim mystring()() as string
。使用锯齿状数组,第一行"行"是一个数组,每个单元格包含一个数组,因此可以初始化一个"列"。
多维和锯齿状数组之间的区别还在于,锯齿状数组可以有不同长度的“#34;列”,因为每列都是1d数组。多维数组不是这种情况,它的所有列都必须具有相同的长度。
这也证明了我对javascript的看法,因为以下代码行是有效的:
var a =[[1,2],[4,5,6],[1]];
答案 1 :(得分:1)
如何使用Generic.List而不是数组?
Dim some_array As New List(Of List(Of String))
some_array.Add({"a", "b", "c"}.ToList())
否则,您需要提供至少一个维度......
Dim some_array(3)() As String
some_array(0) = {"a", "b", "c"}