Подтвердить что ты не робот

Размер массива (длина) в С#

Как определить размер (длина/количество объектов) в массиве в С#?

4b9b3361

Ответ 1

Если это одномерный массив a,

a.Length

даст количество элементов a.

Если b - прямоугольный многомерный массив (например, int[,] b = new int[3, 5];)

b.Rank

даст число измерений (2) и

b.GetLength(dimensionIndex)

получит длину любого заданного измерения (индексирование по размеру для 0 - так что b.GetLength(0) равно 3 и b.GetLength(1) равно 5).

Подробнее см. Документацию System.Array.

Как отмечает @Lucero в комментариях, существует концепция "зубчатого массива", которая на самом деле представляет собой не что иное, как одномерный массив (обычно одномерных) массивов.

Например, можно было бы иметь следующее:

int[][] c = new int[3][];
c[0] = new int[] {1, 2, 3};
c[1] = new int[] {3, 14};
c[2] = new int[] {1, 1, 2, 3, 5, 8, 13};

Обратите внимание, что все три члена c имеют разную длину. В этом случае, как и раньше, c.Length будет указывать количество элементов c, (3) и c[0].Length, c[1].Length, а c[2].Length будет равно 3, 2 и 7 соответственно.

Ответ 2

Вы можете посмотреть документацию для массива, чтобы узнать ответ на этот вопрос.

В этом конкретном случае вам, вероятно, понадобится Length:

int sizeOfArray = array.Length;

Но так как это такой основной вопрос, и у вас, без сомнения, есть нечто большее, чем это, вместо того, чтобы просто сказать вам ответ, я лучше скажу вам, как найти ответ самостоятельно.

Visual Studio Intellisense

Когда вы вводите имя переменной и нажимаете клавишу ., она показывает вам список всех методов, свойств, событий и т.д., доступных на этом объекте. Когда вы выделяете элемент, он дает вам краткое описание того, что он делает.

fINqB.png

Нажмите F1

Если вы найдете метод или свойство, которое может делать то, что вы хотите, но вы не уверены, вы можете переместить курсор над ним и нажать F1, чтобы получить справку. Здесь вы получите гораздо более подробное описание плюс ссылки на соответствующую информацию.

Поиск

Поисковые термины size of array in C# дают много ссылок, которые сообщают вам ответ на ваш вопрос и многое другое. Одним из наиболее важных навыков, которые должен изучать программист, является поиск информации. Часто быстрее найти ответ самостоятельно, особенно если тот же вопрос был задан раньше.

Использовать учебник

Если вы только начинаете изучать С#, вам будет легче следовать учебнику. Я могу порекомендовать учебники по С# в MSDN. Если вы хотите книгу, я бы рекомендовал Essential С#.

Переполнение стека

Если вы не можете найти ответ самостоятельно, не стесняйтесь оставлять вопрос в разделе "Переполнение стека". Но мы ценим это, если вы продемонстрируете, что сначала приложили усилия, чтобы найти ответ.

Ответ 3

С свойством Length.

int[] foo = new int[10];
int n = foo.Length; // n == 10

Ответ 4

для одномерного массива

int[] listItems = new int[] {2,4,8};
int length = listItems.Length;

для многомерного массива

int length = listItems.Rank;

Чтобы получить размер 1 размерности

int length =  listItems.GetLength(0);

Ответ 5

yourArray.Length:)

Ответ 6

Для одного массива измерений вы используете свойство Length:

int size = theArray.Length;

Для массивов с множеством измерений свойство Length возвращает общее количество элементов в массиве. Вы можете использовать метод GetLength, чтобы получить размер одного из параметров:

int size0 = theArray.GetLength(0);

Ответ 7

В большинстве общих случаев используются "длина" и "граф".

Массив:

int[] myArray = new int[size];
int noOfElements = myArray.Length;

Типированный массив массивов:

List <int> myArray = new List<int>();
int noOfElements = myArray.Count;

Ответ 8

он выглядит следующим образом: 1D:

 type[] name=new type[size]  //or =new type[]{.....elements...}

2D:

 type[][]name=new type[size][] //second brackets are emtpy

то при использовании этого массива:

 name[i]=new type[size_of_sec.Dim]

или Вы можете объявить что-то вроде матрицы

type[ , ] name=new type [size1,size2]