C#の2次元配列から要素にアクセスする方法を徹底解説
2次元配列は、x個の行とy個の列を持つ「表(テーブル)」としてイメージすると理解しやすくなります。
2次元配列の要素へアクセスするには、添字(インデックス)を使用します。具体的には、配列の行インデックスと列インデックスを指定します。
int x = a[1,1]; Console.WriteLine(x);
C#では、カンマで区切って a[行, 列] の形式で記述することにより、任意の位置にある要素を取得できます。上記の例では、1行1列の位置にある要素を変数 x に代入し、コンソールに出力しています。
サンプルコード
以下の例では、5行2列の2次元配列を作成し、入れ子になったforループですべての要素を順番に表示します。その後、特定の要素 a[1,1] を取り出して出力します。
using System;
namespace Demo {
class MyArray {
static void Main(string[] args) {
/* 5行2列の配列 */
int[] a = new int[5, 2] {{0,0}, {1,2}, {2,4}, {3,6}, {4,8} };
int i, j;
/* 各要素の値を出力 */
for (i = 0; i < 5; i++) {
for (j = 0; j < 2; j++) {
Console.WriteLine("a[{0},{1}] = {2}", i, j, a[i,j]);
}
}
int x = a[1,1];
Console.WriteLine(x);
Console.ReadKey();
}
}
}実行結果
a[0,0] = 0 a[0,1] = 0 a[1,0] = 1 a[1,1] = 2 a[2,0] = 2 a[2,1] = 4 a[3,0] = 3 a[3,1] = 6 a[4,0] = 4 a[4,1] = 8 2
押さえておきたいポイント
・2次元配列の宣言は int[] a = new int[5, 2]; のように、行数と列数をカンマで区切って指定します。
・要素へのアクセスは a[i, j] の形式で記述し、i が行インデックス、j が列インデックスを表します。
・インデックスは0から始まるため、5行2列の配列では有効な範囲は a[0,0] ~ a[4,1] となります。範囲外のインデックスを指定すると IndexOutOfRangeException が発生します。
・配列のサイズを取得する場合は、a.GetLength(0) で行数、a.GetLength(1) で列数を取得できます。ループ処理の条件式に使うと、配列サイズが変わってもコードを修正せずに済みます。
-
Windows 10のロック画面からアプリを直接起動する方法【レジストリ活用術】
Windows 10のロック画面・ログイン画面にある「簡単操作」ボタン(電源ボタンの横にある時計のようなアイコン)は、聴覚や視覚に障害のある方にとって非常に重要な機能です。 しかし、そうした支援を必要としない方にとっては、存在すら気づかないボタンかもしれません。だったら、このボタンを自分にとって便利なものに作り替えてみてはどうでしょうか?この記事では、ログイン画面からさまざまなアプリを起動できるようにする方法をご紹介します。メモ帳を使ってログイン前に素早くメモを取ったり、ライティングソフトやコマンドプロンプト(Windows Defenderのセキュリティ回避に抵抗がない場合)を呼び出したり
-
JavaScriptで配列の要素を同じ配列内に複製する方法
JavaScriptでは、concat()メソッドとsort()メソッドを組み合わせることで、既存の配列の要素を同じ配列内に複製することができます。ここでは、実際に動作するサンプルコードを使って、その手順をわかりやすく解説します。 コード例 以下は、配列の要素を同じ配列内に複製するためのコード例です。 <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8" /> <meta name="viewport" cont