Одномерные массивы в Java
1. Объявление массива в Java
Одномерный массив в Java - это список однотипных переменных. Чтобы создать массив, нужно сначала объявить переменную массива требуемого типа.
Общая форма объявления одномерного массива выглядит следующим образом:
тип[] имяПеременной;
Где параметр тип
обозначает тип элемента массива, называемый также базовым типом.
Квадратные скобки можно ставить перед переменной или после нее. Но более правильным вариантом считается указание скобок перед переменной - таким образом тип и скобки находятся в одном месте, что позволяет с первого взгляда понять, что перед вами массив такого-то типа:
int monthDays[];
double[] monthSalaries;
2. Инициализация массива с помощью ключевого слова new
Когда массив объявлен, память под него еще не выделена. Для выделения памяти под массив, используется ключевое слово new, после которого опять указывается тип массива и в квадратных скобках его размер:
имяПеременной = new тип[размер];
Массив может быть объявлен и инициализирован одной строкой:
int[] values = new int[45];
Рассмотрим пример объявления массива типа int
размером 12 на данном примере. После выполнения строки int[] monthDays = new int[12]
массив из 12 элементов создан. Каждому элементу присваивается значение по умолчанию для заданного типа. Для типа int
это ноль. Для обращения к отдельному элементу массива после имени массива в квадратных скобочках задаем индекс элемента. Таким образом мы можем обратиться к элементу массива для изменения или получения его значения:
public class ArrayExample1 {
public static void main(String[] args) {
int[] monthDays = new int[12];
monthDays[0] = 31;
monthDays[1] = 28;
monthDays[2] = 31;
monthDays[3] = 30;
monthDays[4] = 31;
monthDays[5] = 30;
monthDays[6] = 31;
monthDays[7] = 31;
monthDays[8] = 30;
monthDays[9] = 31;
monthDays[10] = 30;
monthDays[11] = 31;
System.out.println("B апреле " + monthDays[3] + " дней.");
}
}
3. Инициализация массива с помощью блока для инициализации
Если заранее известны значения для каждого элемента массива, можно использовать блок для инициализации массива. Вместо new int[12]
, в фигурных скобках через запятую перечисляются значения элементов массива. Размер массива выводится компилятором из количества указанных элементов:
public class ArrayExample2 {
public static void main(String[] args) {
int[] monthDays = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
System.out.println("B апреле " + monthDays[3] + " дней.");
}
}
4. Безымянный массив
Существует еще и третья форма объявления массива - безымянный массив. Он может использоваться в двух случаях.
Первый - вы объявили и инициализировали массив testScores
размера четыре, но потом по какой-то причине он должен быть изменен - он должен содержать три элемента. Использовать повторно форму для инициализации массива нельзя - будет ошибка компиляции:
int[] testScores = {1, 2, 3, 4};
...
testScores = {4, 7, 2}; //ошибка компиляции
Но можно использовать безымянный массив, который создаст новый массив в памяти. Форма написания безымянного массива - это микс первых двух:
testScores = new int[]{4, 7, 2};
Второй случай использования безымянного массива - это передача массива в метод. В следующем примере метод print
принимает на вход массив типа int
. При вызове метода в качестве аргумента можно передать безымянный массив.
public class ArrayExample3 {
public static void main(String[] args) {
int[] testScores = {1, 2, 3, 4};
for (int element : testScores) {
System.out.print(element + " ");
}
System.out.println();
testScores = new int[]{4, 7, 2};
for (int element : testScores) {
System.out.print(element + " ");
}
System.out.println();
print(new int[]{4, 6, 2, 3});
}
public static void print(int[] array) {
for (int element : array) {
System.out.print(element + " ");
}
}
}
Презентацию с видео можно скачать на Patreon.
Курс 'Java для начинающих' на Udemy
Зарегистрируйтесь или войдите, чтобы иметь возможность оставить комментарий.