<< ПредыдущаяОглавлениеСледующая >>


3. МАССИВЫ

Массив - это группа переменных одного типа, доступ к которым осуществляется с помощью общего имени. Для объявления типа массива используются квадратные скобки. В приведенной ниже строке объявляется переменная month_days, тип которой — «массив целых чисел типа int».

int month_days [];

Для того чтобы зарезервировать память под массив, используется специальный оператор new. При использовании этого оператора необходимо указать требуемый тип элементов и неотрицательное число элементов, которые нужно иметь в массиве. В приведенной ниже строке кода с помощью оператора new массиву month_days выделяется память для хранения двенадцати целых чисел.

month_days = new int [12];

Итак, теперь month_days — это ссылка на двенадцать целых чисел. Ниже приведен пример, в котором создается массив, элементы которого содержат число дней в месяцах года (невисокосного).

class Array {
public static void main (String args []) {
int month_days[];
month_days = new int[12];
month_days[0] = 31;
month_days[l] = 28;
month_days[2] =31;
month_days[3] = 30;
month_days[4] =31;
month_days[5] = 30;
month_days[6] = 31;
month_days[7] = 31;
month_days[8] = 30;
month_days[9] = 31;
month_days[10] = 30;
month_days[ 11 ] = 31;
System.out.println("Апрель содержит” + month_days[3] +” дней.");} }

При запуске эта программа печатает количество дней в апреле. Нумерация элементов массива в Java начинается с нуля, так что число дней в апреле — это month_days [3].

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

class AutoArray {
public static void main(String args[]) {
intmonth_days[] = { 31,28,31,30,31,30, 31, 31,30,31, 30, 31 };
System.out.println("Апрель содержит " + month_days[3] + " дней."); }
}

Java строго следит за тем, чтобы вы случайно не записали или не попытались получить значения, выйдя за границы массива. При выполнении программы Java проверяет, все ли индексы попадают в допустимый диапазон. Если же вы попытаетесь использовать в качестве индексов значения, выходящие за границы массива — отрицательные числа либо числа, которые больше или равны количеству элементов в массиве, то получите сообщение об ошибке времени выполнения.

 



<< ПредыдущаяОглавлениеСледующая >>