よし、私は PHP に慣れているので、 のようなマルチレベル配列を宣言できます$something[0][1] = "test";
。同じことを達成できるようにする必要がありますが、VB.NET を使用しています。どうすればいいですか?
これが多次元配列ではない場合は申し訳ありませんが、それが何と呼ばれているのか間違っているかもしれませんが、それが私がやりたいことです。
ありがとう!
よし、私は PHP に慣れているので、 のようなマルチレベル配列を宣言できます$something[0][1] = "test";
。同じことを達成できるようにする必要がありますが、VB.NET を使用しています。どうすればいいですか?
これが多次元配列ではない場合は申し訳ありませんが、それが何と呼ばれているのか間違っているかもしれませんが、それが私がやりたいことです。
ありがとう!
VB.Net の多次元配列...
Dim twoDimensionalArray(10, 10) As String
twoDimensionalArray(0, 1) = "test"
ただし、配列を使用することはめったにありません。通常、より洗練されたソリューションは、Lists、Dictionaries、または 2 つの組み合わせを使用して実現できます。
更新します 。
は(10, 10)
、配列の上限です (サイズは実際には 11、0 から 10 です)。境界を指定しない場合はRedim Preserve
、配列に追加する必要があります。これはリストの良い点の 1 つです。初期サイズを指定する必要はなく、自由にサイズを追加できます。
リストのリストの簡単な例を次に示します。
Dim listOfLists As New List(Of List(Of String))
listOfLists.Add(New List(Of String)(New String() {"a", "b", "c"}))
listOfLists.Add(New List(Of String)(New String() {"d", "e", "f"}))
listOfLists.Add(New List(Of String)(New String() {"g", "h", "i"}))
'listOfLists(0)(0) = "a"
'listOfLists(0)(1) = "b"
'listOfLists(2)(1) = "h"
配列の動的サイズ変更を伴う単純なサンプル
Dim arr(0)() As String '** array declaration
For i As Integer = 0 To 100 '** Outer loop (for the 1st dimension)
For j As Integer = 0 To 1 '** inner loop (for the 2nd dimension)
ReDim Preserve arr(i) '** Resize the first dimension array preserving the stored values
ReDim Preserve arr(i)(j) '** Resize the 2nd dimension array preserving the stored values
arr(i)(j) = String.Format("I={0},J={1}", i, j) '** Store a value
Next
Next
.NET では、配列は通常静的であり、自動的にサイズ変更されません。(例えば Javascript など) そのため、新しい項目を追加するたびに手動で配列のサイズを変更するか、最初にサイズを指定する必要があります。