Javanese Online

Переменное количество аргументов (VarArgs)

Разумеется, можно написать метод, который будет принимать массив в качестве аргумента:

public static void showAllElements(int[] array) {
    for (int element : array) {
        System.out.println(element);
    }
}

Сгенерируем массив и передадим его в метод.

int[] numbers = new int[10];
// создаём массив, изначально он забит нулями

for (int i = 0; i < 10; i++) {
    // наполняем его
    numbers[i] = i*i;
}

// передаём в метод
showAllElements(numbers);

Вывод:

0
1
4
9
16
25
36
49
64
81

В отличие от предыдущего примера, далее мы решаем создать массив и сразу передать его в метод:

showAllElements(new int[]{1, 2, 3, 4, 5});

Если в объявлении метода исправить тип с int[] на int..., массив из переданных аргументов будет сформирован автоматически, и можно будет писать так:

showAllElements(1, 2, 3, 4, 5);

Эта практика называется varArgs или переменное количество аргументов. Такой аргумент должен идти последним, то есть:

public static void showAllElements(int... array) { … }
// так будет объявлен наш метод — тут всё в порядке

public static void showAllElements(int... array, String title) { … }
// неверно: varArg должен быть последним

public static void showAllElements(String title, int... array) { … }
// всё в порядке
Комментарии
{"type":"lessonComments","id":"44bfbb8e-46a0-40ac-8c56-2428b96e8d52","comments":[]}

Сообщить об ошибке

Javanese.Online в GitHub

Чаты и каналы в Telegram

RSS-лента