Varargs (short for variable-length arguments) allow you to pass an arbitrary number of arguments to a method.

Syntax

  • Only one varargs parameter is allowed per method
  • It must be the last parameter in the method signature
public void methodName(Type... args) {
    // args is treated as an array of Type
}
public void log(String level, String... messages) { ... }

Example

public class Example {
    public static void printNumbers(int... numbers) {
        for (int number : numbers) {
            System.out.println(number);
        }
    }
 
    public static void main(String[] args) {
        printNumbers(1, 2, 3);        // prints 1 2 3
        printNumbers(10);             // prints 10
        printNumbers();               // prints nothing
    }
}

int... numbers is equivalent to int[] numbers. Inside the method, numbers behaves like a regular array.


Back to parent page: Java Standard Edition (Java SE) and Java Programming

Web_and_App_Development Programming_Languages Java Varargs