C#のArrayクラスでGetLengthメソッドを使う方法【次元ごとの要素数を取得】
C#のGetLengthメソッドは、配列(Array)の指定した次元に含まれる要素数を、32ビット整数(int型)として取得するためのメソッドです。多次元配列やジャグ配列を扱う際に、各次元のサイズを動的に知りたい場合に非常に便利です。
GetLengthメソッドの基本構文
まず、多次元配列を宣言します。
int[] arr = new int[20, 30];
この例では、20行×30列の2次元配列を作成しています。
次に、要素数を取得したい次元のインデックスを引数としてGetLength()メソッドに渡します。次元のインデックスは0から始まる点に注意してください。
arr.GetLength(1);
- GetLength(0) → 1次元目(行)の要素数
- GetLength(1) → 2次元目(列)の要素数
サンプルコード
using System;
class Program {
static void Main() {
// 20行 × 30列 の2次元配列を宣言
int[] arr = new int[20, 30];
// 2次元目(インデックス1)の要素数を取得
int len = arr.GetLength(1);
Console.WriteLine(len);
}
}実行結果
30
補足ポイント
なお、配列全体の総要素数を取得したい場合は、Lengthプロパティを使用します。上記の例では arr.Length は 20 × 30 = 600 を返します。一方、GetLengthメソッドは次元ごとのサイズを個別に確認できるため、ループ処理で多次元配列を走査する際などに活用するとコードがより安全で読みやすくなります。
-
C#で配列の次元数(ランク)を定義・取得する方法
C#において、配列の次元数(ランク)を調べたい場合は、Arrayクラスが提供する Rank プロパティを使用します。このプロパティは、配列が持つ次元の数を整数値として返します。Rankプロパティの使い方次元数を取得するには、以下のように記述します。arr.Rankここで、arrは対象となる配列です。例えば、次のような2次元配列を考えてみましょう。int[] arr = new int[3,4];行数・列数を取得するにはGetLengthメソッドを使う配列の次元数だけでなく、各次元の要素数(行数や列数など)を取得したい場合は、GetLength メソッドを使用します。引数には対象の次元のインデッ
-
C#のArrayクラスのプロパティとは?主要プロパティと使い方を解説
C#におけるArrayクラスは、すべての配列の基底クラスであり、System名前空間で定義されています。このクラスには、配列のサイズや読み取り専用かどうか、次元数などの情報を取得するための便利なプロパティが多数用意されています。Arrayクラスの主なプロパティ一覧No.プロパティと説明1IsFixedSize配列が固定サイズであるかどうかを示す値を取得します。2IsReadOnly配列が読み取り専用であるかどうかを示す値を取得します。3Length配列のすべての次元に含まれる要素の総数を、32ビット整数(int)として取得します。4LongLength配列のすべての次元に含まれる要素の総数を、