C#
 Computer >> コンピューター >  >> プログラミング >> C#

【C#】Lengthプロパティを使ってジャグ配列の長さを取得する方法

ジャグ配列とは

C#におけるジャグ配列(Jagged Array)は、「配列の中に配列」を持つ構造の配列です。各要素が異なる長さの配列を持てるため、多次元配列よりも柔軟なデータ管理が可能になります。

この記事では、Lengthプロパティを使用して、ジャグ配列の長さ(要素数)を取得する方法を解説します。

1. ジャグ配列を宣言・初期化する

まず、ジャグ配列を宣言し、初期化します。以下のコードでは、各行に長さ2のint型配列を持つ5行分のジャグ配列を作成しています。

int[][] arr = new int[][] {
    new int[] { 0, 0 },
    new int[] { 1, 2 },
    new int[] { 2, 4 },
    new int[] { 3, 6 },
    new int[] { 4, 8 }
};

2. Lengthプロパティで長さを取得する

ジャグ配列の長さを取得するには、Lengthプロパティを使用します。これにより、配列の先頭次元(行数)に含まれる要素の総数が返されます。

arr.Length

上記の場合、5つの内部配列を持っているため、結果として「5」が出力されます。

完全なコード例

以下に、Lengthプロパティのほか、GetUpperBound()GetLowerBound()Rankを使った情報取得も含めた完全なサンプルコードを示します。

using System;

public class Program {
    public static void Main() {
        int[][] arr = new int[][]{ new int[]{0,0}, new int[]{1,2}, new int[]{2,4}, new int[]{3,6}, new int[]{4,8} };

        // 配列の長さを取得
        Console.WriteLine("Length:" + arr.Length);

        // 上限インデックスと下限インデックスを取得
        Console.WriteLine("Upper Bound: {0}", arr.GetUpperBound(0).ToString());
        Console.WriteLine("Lower Bound: {0}", arr.GetLowerBound(0).ToString());

        // 配列の次元数を取得
        Console.WriteLine("Dimensions of Array : " + arr.Rank);
    }
}

実行結果

Length:5
Upper Bound: 4
Lower Bound: 0
Dimensions of Array : 1

まとめ

  • Length:配列全体の要素数(ジャグ配列では先頭次元の配列数)を取得できます。
  • GetUpperBound(0):指定した次元の最大インデックスを返します。
  • GetLowerBound(0):指定した次元の最小インデックスを返します。
  • Rank:配列の次元数を返します。ジャグ配列の場合は「1」と表示されます。

ジャグ配列の長さを正確に把握することで、ループ処理やデータ操作を安全かつ効率的に行うことができます。

  1. C#で文字列の長さを取得する方法を解説!String.Lengthプロパティの使い方

    C#で文字列の長さを取得する基本 C#で文字列の長さ(文字数)を取得するには、String.Lengthプロパティを使用します。これは最もシンプルで一般的な方法です。 str.Length Lengthプロパティは、指定された文字列に含まれる文字数を計算して返します。例えば、文字列「Amit」の場合は4文字となるため、Lengthプロパティの戻り値は「4」になります。 string str = Amit; サンプルコード 以下は、C#で文字列の長さを計算して表示するプログラムの完全な例です。 using System; using System.Collections; namespace

  2. C#で配列の長さを取得する方法

    C#で配列の長さ(要素数)を取得するには、Lengthプロパティを使用します。このプロパティは、配列に格納されている全要素の数を整数値として返します。サンプルコード以下に具体的な使用例を示します。using System; class Program { static void Main(){ int[] arr = new int[10]; // 配列の長さを取得 int arrLength = arr.Length; Console.WriteLine(配列の長さ: + arrLength); } }実行結