Массив - это последовательный список элементов
int item = value;
int [] one_dimensional_array = { value, value, value, .., value };
int [][] two_dimensional_array =
{
{ value, value, value, .. value },
{ value, value, value, .. value },
.. .. .. ..
{ value, value, value, .. value }
};
Если это объект, то это та же концепция
Object item = new Object();
Object [] one_dimensional_array = { new Object(), new Object(), .. new Object() };
Object [][] two_dimensional_array =
{
{ new Object(), new Object(), .. new Object() },
{ new Object(), new Object(), .. new Object() },
.. .. ..
{ new Object(), new Object(), .. new Object() }
};
В случае объектов вам нужно либо присвоить его null
, чтобы инициализировать их, используя new Type(..)
, классы, такие как String
и Integer
, являются особыми случаями, которые будут обрабатываться следующим образом
String [] a = { "hello", "world" };
// is equivalent to
String [] a = { new String({'h','e','l','l','o'}), new String({'w','o','r','l','d'}) };
Integer [] b = { 1234, 5678 };
// is equivalent to
Integer [] b = { new Integer(1234), new Integer(5678) };
Как правило, вы можете создавать массивы, которые M
мерные
int [][]..[] array =
// ^ M times [] brackets
{{..{
// ^ M times { bracket
// this is array[0][0]..[0]
// ^ M times [0]
}}..}
// ^ M times } bracket
;
Стоит отметить, что создание массива M
является дорогостоящим с точки зрения пространства. Поскольку, когда вы создаете размерный массив M
с N
для всех измерений, общий размер массива больше, чем N^M
, так как каждый массив имеет ссылку, а в M-измерении есть (M -1) -мерный массив ссылок. Общий размер следующий
Space = N^M + N^(M-1) + N^(M-2) + .. + N^0
// ^ ^ array reference
// ^ actual data