[ [[tutorial-ru-001 | Введение]] | [[tutorial-ru-002 | Основы]] | [[tutorial-ru-003 | if/else]] | [[tutorial-ru-004 | Циклы]] | [[tutorial-ru-005 | Массивы]] | [[tutorial-ru-006 | Графика]] | [[tutorial-ru-007 | Анимация]] | [[tutorial-ru-008 | Мышь]] | [[tutorial-ru-009 | Клавиатура]] | [[tutorial-ru-010 | Математика]] | [[tutorial-ru-011 | Методы]] | [[tutorial-ru-012 | Текст]] | [[tutorial-ru-013 | Задачи]] ] ---- == Java для школьников: урок 5 == ====== Массивы ====== Масcивы - это списки похожих объектов или типов данных. Они хранятся по номерам от 0 до некоторого максимального значения. Вот пример массива целых чисел (int). Обратите внимание на формат: фигурные скобки вокруг и запятые между элементами. { 12, 7, 32, 15, 113, 0, 7 } Вот как элементы будут расположены в массиве по номерам: ^ Номер | 0 | 1 | 2 | 3 | 4 | 5 | 6 | ^ Значение | 12 | 7 | 32 | 15 | 113 | 0 | 7 | Номер элемента в массиве называется индексом. Чтобы получить значение элемента массива, надо после имени массива добавить индекс элемента в квадратных скобках []. Для примера, дадим массиву имя tab. ===== Объявление массива ===== Объявить массив можно двумя способами: int tab[]; int[] tab; Такое объявление сообщает компилятору, какой тип переменных будет храниться в массиве. Но сам массив пока не создается. Чтобы создать массив, нужно использовать ключевое слово "new". Например, создадим массив, содержащий 7 целых значений: int[] tab; tab = new int[7]; При создании элементы нашего массива получат начальное значение 0 (по умолчанию). Массив можно объявить, создать и инициализировать одной инструкцией, например: int[] tab = { 12, 7, 32, 15, 113, 0, 7 }; Обратите внимание на фигурные скобки вокруг списка значений массива и запятые между элементами. ===== Обращение к элементу массива ===== Чтобы получить элемент массива, мы просто добавляем к имени массива номер элемента в квадратных скобках, например tab[0]. ** Упражнения: ** - Чему равно tab[0]? - Какое значение содержит tab[5]? Запомните - массивы начинаются с индекса 0. Так что пятый по счету элемент массива - это arrayName[4]. Вот формула: n-тый элемент => arrayName[n-1] ===== Изменение значений элементов массива ===== Если Вы хотите изменить значения элементов массива, делайте так: tab[3] = 56; tab[1] = 27; Чтобы поместить элемент массива в другую переменную, поступайте следующим образом: int val; val = tab[4]; Если Вы теперь напечатаете val (например printLine(val);), получится 113. Достаточно теории, давайте напишем законченную программу! void main() { // Объявляем, инициализируем массив int[] tab = { 12, 7, 32, 15, 113, 0, 7 }; // Печатаем значения for (int i = 0; i<7; i++) { printLine("Значение "+ i + " = " + tab[i]); } } ** Упражнения: ** - Правильные ли это инструкции? * int[] numberArray[]; * String[] name; * double price[]; price = new double[12]; - Какие значения по умолчанию получают переменные типов int, double, String, boolean? ===== Задачи ===== * Напишите программу, которая заполняет массив целыми числами от 1 до 100, а затем печатает их в обратном порядке. * Реализуйте "решето Эратосфена" - алгоритм поиска простых чисел методом вычеркивания. Начните с массива, заполненного числами от 2 до, скажем, 100. Затем пройдите (в цикле) по массиву, вычеркивая (устанавливая в 0) элементы, кратные 2, то есть 4, 6, ...100. Затем кратные 3 - 6, 9, ...99. И так далее, пока есть что вычеркивать. Напечатайте все ненулевые элементы полученного массива. Это будет список простых чисел, не превосходящих 100. ---- [[tutorial-ru-006 | Перейдем к следующему уроку]].