1Массивы
В языке Ява массивы являются объектам, которые создаются динамически, и могут иметь значение переменных типа Object.
Объект массива содержит ряд переменных. Число переменных может быть нулевым, в случае когда массив, как говорят, является пустым. При обращении к компонентам массива используют целочисленные индексы от 0 до n-1 включительно.
Все компоненты массива имеют одинаковый тип, который называется типом компонент массива. Если тип компонент массива - T, тогда массив пишется T [].
1.1Типы массива
Тип массива пишется как имя типа элемента, сопровождаемого некоторым числом пустых пар квадратных скобок []. Число пар скобок указывает на глубину вложения массива. Длина массива - не является частью его типа.
Возможные следующие варианты объявления массива:
тип[] имя; тип имя[];
Объявить имя для массива и создать сам массив можно было на одной строке по следующей схеме:
тип[] имя = new тип[размер]; тип[] имя = {эл0, эл1, …, элN};
1.2Переменные-массивы
Переменная типа массив содержит ссылку на объект. Объявление переменной типа массив не создает массив объектов или не назначает какое-нибудь место для компонент массива. Оно создает только саму переменную, которая может содержать ссылку на массив.
Ниже приведены некоторые примеры объявления переменных массива, которые создают массив объектов:
Exception ae[] = new Exception[3];
Object aao[][] = new Exception[2][3];
int[] factorial = { 1, 1, 2, 6, 24, 120, 720, 5040 };
char ac[] = { 'n', 'o', 't', ' ', 'a', ' ', 'S', 't', 'r', 'i', 'n', 'g' };
String[] aas = { "array", "of", "String", };
Как только объект массива создан, его длина никогда не изменяется. Чтобы создать переменную-массив, ссылающуюся на массив другой длины, нужна ссылка на различные массивы, которая должна быть присвоена переменной.
1.3Создание массива
Массив создается выражением создания массива или инициализатором массива.
Инициализатор массива создает массив и обеспечивает начальные значения для всех компонент.
1.4Доступ к массиву
К компоненту массива обращаются с помощью выражения доступа к массиву которое состоит из выражения, чье значение - ссылка на массив, сопровождаемая индексным выражением, заключенным в скобки [], как в A[i]. Индексация всех массивов начинается с 0. Массив длиной n может быть индексирован целыми от 0 до n-1.
Массивы должны быть индексированы значениями типа int; short, byte, или также в качестве значений индекса могут использоваться значения типа char, потому что они подвергаются одноместному числовому расширению и становятся значениями типа int (т.е. целые). Попытка доступа к компоненте массива с помощью индекса значение у которого типа long вызовет ошибку времени компиляции.
Все обращения к массиву проверяются во время исполнения; попытка использовать индекс, значение которого меньше нуля или больше чем длина массива вызывает генерацию IndexOutOfBoundsException.
factorial[5];
1.5Массивы: простой пример
Пример:
class Gauss {
public static void main(String[] args) {
int[] ia = new int[101];
for (int i = 0; i < ia.length; i++)
ia[i] = i;
int sum = 0;
for (int i = 0; i < ia.length; i++)
sum += ia[i];
System.out.println(sum);
}
}
объявляет переменную ia, которая является переменной типа массив целых чисел.