• ベストアンサー

VB.NET 2次元配列

二次元配列に関して質問があります。 二次元配列を定義します。 Dim a(,) As Integer = _ {{0, 0, 0, 0, 0, 0, 1, 1, 1}, _ {0, 0, 0, 0, 0, 1, 0, 0, 1}, _ {0, 0, 0, 0, 0, 0, 1, 1, 1}} 一次元配列を定義します。 Dim b() As Integer 一次元配列のb()に二次元配列a(,)の {0, 0, 0, 0, 0, 0, 1, 1, 1}の部分を 入れようとした場合、 どのように記載すればよろしいでしょうか? イメージ的には b = a(0) で出きると思ったのですが、 構文エラーとなってしまいます。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • jun88ken
  • ベストアンサー率62% (15/24)
回答No.2

  求めているものとは違く、また既にご存知のものかもしれませんが・・・。   2次元配列の定義を以下のようにすれば、ご希望の操作が出来ます。   ※配列の定義が(,)ではなく()()になるため、2次元配列の参照が変わります。   '----------------------------------------------------------------------------   Dim array_a()() As Integer = _                 {New Integer() {0, 0, 0, 0, 0, 0, 1, 1, 1}, _                 New Integer() {0, 0, 0, 0, 0, 1, 0, 0, 1}, _                 New Integer() {0, 0, 0, 0, 0, 0, 1, 1, 1}}   Dim b() As Integer   Dim c As Integer   b = array_a(0)   ' {0, 0, 0, 0, 0, 0, 1, 1, 1}の部分を代入   b = array_a(1)   ' {0, 0, 0, 0, 0, 1, 0, 0, 1}の部分を代入   c = array_a(2)(7)  ' {0, 0, 0, 0, 0, 0, 1, 1, 1}の7番目 '1'を代入   '----------------------------------------------------------------------------

nijio-ra
質問者

お礼

ありがとうございます。 この方法でうまくいきました。

その他の回答 (1)

回答No.1

ループを回すのが、スタンダードなアルゴリズムだと思います。

nijio-ra
質問者

お礼

ご回答ありがとうございます。