Как написано в предыдущих ответах, он varargs
объявлен с помощью ellipsis
( ... )
Более того, вы можете передавать типы значений и / или ссылочные типы или оба смешанные (Google Autoboxing ). Кроме того, вы можете использовать параметр метода как массив, как показано printArgsAlternate
ниже для метода.
Демо-код
public class VarargsDemo {
public static void main(String[] args) {
printArgs(3, true, "Hello!", new Boolean(true), new Double(25.3), 'a', new Character('X'));
printArgsAlternate(3, true, "Hello!", new Boolean(true), new Double(25.3), 'a', new Character('X'));
}
private static void printArgs(Object... arguments) {
System.out.print("Arguments: ");
for(Object o : arguments)
System.out.print(o + " ");
System.out.println();
}
private static void printArgsAlternate(Object... arguments) {
System.out.print("Arguments: ");
for(int i = 0; i < arguments.length; i++)
System.out.print(arguments[i] + " ");
System.out.println();
}
}
Вывод
Arguments: 3 true Hello! true 25.3 a X
Arguments: 3 true Hello! true 25.3 a X