Массив является заказанной структурой данных, состоящей из набора элементов (значения, переменные или ссылки), каждый определенный одним или несколькими индексами. Спрашивая об определенных вариантах массивов, используйте эти связанные теги вместо этого: [вектор], [arraylist], [матрица]. Когда использование этого тега, в вопросе, который характерен для языка программирования, отмечает вопрос с используемым языком программирования.
Массив является заказанной структурой данных, состоящей из набора элементов (значения или переменные), каждый определенный по крайней мере одним индексом, сохраненным в непрерывных ячейках памяти.
Массив обычно хранится так, чтобы положение каждого элемента могло быть вычислено из своего индексного кортежа математической формулой.
На некоторых языках (C, Java, и т.д.) длина массива должна быть установлена заранее. На других языках (Ruby, Python, LISP, Haxe, и т.д.) длина массива растет динамично, поскольку добавляются элементы.
Когда метки вопроса с этим тегом, также, отмечают вопрос с используемым языком программирования.
std::array
поскольку время компиляции выстраивает размеры, std::vector
для динамических размерных массивов во время выполнения. Это также имеет реализации интеллектуального указателя как std::unique_ptr
, std::shared_ptr
.NSArray
и NSMutableArray
для динамических массивов.array
.list
, в то время как array
тип используется для гомогенных массивов.new Array()
или [1, 2, 3]
, но также и использование понимания Массива: [for (i in 0...10) if (i % 2 == 0) i]
. Для устройства хранения данных фиксированного размера абстрактный тип haxe.ds.Vector
может использоваться, который может быть быстрее, чем Массив на некоторых целях и никогда не медленнее.Array
. Для получения элемента от массива, Вы используете круглые скобки (большинство языков использует квадратные скобки).@
префикс и массивы объявляются с круглыми скобками. Замена префикса с $#
возвращает последний индекс.Элементы массива обычно указываются с 0 первыми индексами, например, myarray[0]
представил бы первый элемент myarray
. myarray[l]
(где l
длина массива минус, 1) представил бы последний элемент в массиве. Однако некоторые языки, такие как старый Фортран и Lua используют 1 в качестве начального индекса.
Некоторые языки (C++, Java, C#) имеют "основные массивы" и наборы. Основные массивы поддерживаются компилятором непосредственно, имеют фиксированный размер и только обеспечивают доступ элемента индексом. Наборы, как Java ArrayList
, классы системной библиотеки, реализованные на вершине этих основных массивов, и имеют широкий спектр различных методов. В таких случаях массивы тега должны использоваться для именования простых массивов.
Массивы могут быть статически выделены или динамично выделены. Путь, которым Вы получаете доступ к массиву и его типу, варьируется на основе того, как он объявляется и выделяется.
Массивы могут содержать несколько индексов. Например, массив с одним индексом (например. array[0]
) известен как одномерный массив. Если это имеет два индекса (например. array[0][0]
) это считают двумерным и возможно визуализируемым как сетка. Многомерные массивы, или, другими словами, массивы с несколькими индексами называют матрицами, или матрица особена.
Где, говоря об определенных вариантах массивов, используйте эти связанные теги вместо этого: