配列 (C# プログラミング ガイド)Arrays (C# Programming Guide)

配列データ構造体には、同じ型の複数の変数を格納できます。You can store multiple variables of the same type in an array data structure. 配列は、要素の型を指定することで宣言します。You declare an array by specifying the type of its elements.

type[] arrayName;

次の例では、1 次元配列、多次元配列、およびジャグ配列を作成しています。The following example creates single-dimensional, multidimensional, and jagged arrays:

class TestArraysClass
{
    static void Main()
    {
        // Declare a single-dimensional array 
        int[] array1 = new int[5];

        // Declare and set array element values
        int[] array2 = new int[] { 1, 3, 5, 7, 9 };

        // Alternative syntax
        int[] array3 = { 1, 2, 3, 4, 5, 6 };

        // Declare a two dimensional array
        int[,] multiDimensionalArray1 = new int[2, 3];

        // Declare and set array element values
        int[,] multiDimensionalArray2 = { { 1, 2, 3 }, { 4, 5, 6 } };

        // Declare a jagged array
        int[][] jaggedArray = new int[6][];

        // Set the values of the first array in the jagged array structure
        jaggedArray[0] = new int[4] { 1, 2, 3, 4 };
    }
}

配列の概要Array Overview

配列には、次の特徴があります。An array has the following properties:

  • 配列は、1 次元配列多次元配列、またはジャグ配列のいずれかになります。An array can be Single-Dimensional, Multidimensional or Jagged.

  • 次元数と各次元の長さは、配列インスタンスの作成時に設定されます。The number of dimensions and the length of each dimension are established when the array instance is created. インスタンスの有効期間中にこれらの値を変更することはできません。These values can't be changed during the lifetime of the instance.

  • 数値配列要素の既定値はゼロに設定され、参照要素は null に設定されます。The default values of numeric array elements are set to zero, and reference elements are set to null.

  • ジャグ配列は配列の配列です。そのため、配列要素は参照型で、null に初期化されます。A jagged array is an array of arrays, and therefore its elements are reference types and are initialized to null.

  • 配列には、ゼロから始まるインデックスが付けられます。n 個の要素を含む配列には、0 から n-1 までのインデックスが付けられます。Arrays are zero indexed: an array with n elements is indexed from 0 to n-1.

  • 配列の要素および配列型は、どのような型でもかまいません。Array elements can be of any type, including an array type.

  • 配列型は、抽象基本型 Array から派生した参照型です。Array types are reference types derived from the abstract base type Array. この型は IEnumerableIEnumerable<T> を実装するので、C# のすべての配列で foreach 反復処理を使用できます。Since this type implements IEnumerable and IEnumerable<T>, you can use foreach iteration on all arrays in C#.

C# 言語仕様C# Language Specification

詳細については、「C# 言語の仕様」を参照してください。For more information, see the C# Language Specification. 言語仕様は、C# の構文と使用法に関する信頼性のある情報源です。The language specification is the definitive source for C# syntax and usage.

関連項目See also