Массивы (Руководство по программированию на 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. Если требуется, чтобы массив мог хранить элементы любого типа, можно указать object в качестве его типа.If you want the array to store elements of any type, you can specify object as its type. В унифицированной системе типов C# все типы, стандартные и определяемые пользователем, ссылочные типы и типы значений напрямую или косвенно наследуются из Object.In the unified type system of C#, all types, predefined and user-defined, reference types and value types, inherit directly or indirectly from Object.

type[] arrayName;

ПримерExample

В следующих примерах создаются одномерные массивы, многомерные массивы и массивы массивов: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:

  • Массив может быть одномерным, многомерным или массивом массивов.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. Поскольку этот тип реализует IEnumerable и IEnumerable<T>, вы можете просматривать в цикле foreach любые массивы C#.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