一方、Array.Clearメソッドでは多次元配列をクリアすることも出来ますが、その際多次元配列は1次元配列の様に扱われます。 Array.Clearメソッドの引数に指定するインデックスは、多次元配列を1次元配列に展開したときの位置として解釈されるという点に注意が必要です。

Array.Clearメソッドで2次元配列をゼロクリアする
Imports System

Class Sample
  Shared Sub Main()
    Dim matrix As Integer(,) = { _
      {0, 1, 2, 3}, _
      {4, 5, 6, 7}, _
      {8, 9, 10, 11} _
    }

    ' 2次元配列の一部分をクリア
    Array.Clear(matrix, 3, 4)

    For d1 As Integer = 0 To matrix.GetLength(0) - 1
      For d2 As Integer = 0 To matrix.GetLength(1) - 1
        Console.Write("{0}, ", matrix(d1, d2))
      Next
      Console.WriteLine()
    Next
  End Sub
End Class
実行結果
0, 1, 2, 0, 
0, 0, 0, 7, 
8, 9, 10, 11,

MENTAにてテキストチャットによるサポートを行っています。 問題の解決法をお探しの方や.NET/C#を学習中の方はどうぞご利用ください。