2012-04-30 150 views
0

我如何將這個數組轉換爲無限範圍數組?2維數組VB.NET

Dim multiArray(2, 2) As String 
multiArray(0, 0) = "item1InRow1" 
multiArray(0, 1) = "item2InRow1" 
multiArray(1, 0) = "item1InRow2" 
multiArray(1, 1) = "item2InRow2" 

我tryed:

Dim multiArray(,) As String 

,但我不會成功

+0

的[使在VB.NET的2D動態陣列]可能重複(http://stackoverflow.com/questions/10378353/make-an-2d-dynamic-array-in-vb-net) – JeffO

回答

2

使用這樣的變量。 n的值可以由用戶/某些邏輯分配。

Dim n As Integer = 2 
Dim str As String(,) = New String(n - 1, n - 1) {} 
+0

這是否會保留他原有的數據? –

+0

str正在分配一個新值。所以它將從索引0開始。所以,我可以知道你的確切要求是什麼? – kbvishnu

+0

看起來像他接受你的答案,他問如何以編程方式創建一個新的多維數組而不是redimension現有的。 +1爲好答案 –

2

陣列其性質具有有限的尺寸,改變它是Redim/Preserve這可以說是相當的數組的唯一途徑代價高昂(見link),只能重新調整最後的維度。您可能想要使用類似ArrayListcollection classes之類的文章,如文章所示。

+0

你的回答幫了我很多,非常感謝...... –