Java可变参数列表

我们在编程时经常使用以下代码
Arrays.asList(value_1, value_2, value_3, ... value_n);
可以看作接受确定个数形参的函数,这就是Java的可变参数列表,是在Java SE5 引入的新特性

  • 可变参数列表其实是一个数组,作为函数f()的形参时,函数f()既可以接受一个数组,也可以接受可变参数列表,编译器自动将可变参数列表变为数组
  • 可变参数列表声明如下 void f(int... is);
import java.util.Arrays;

public class Main {

    public static void f(int... is ) {
        System.out.println(Arrays.toString(is));
    }
    
    public static void g(int[] is) {
        System.out.println(Arrays.toString(is));
    }
    
    public static void main(String... args) {        //可以把String[] 变成String...
        int[] a = new int []{1,2,3,4};
        f(1,2,3,4);
        f(a);
        //g(1,2,3,4);   Compile Error
        g(a); 
    }

}

输出结果:

[1, 2, 3, 4]
[1, 2, 3, 4]
[1, 2, 3, 4]

你可能感兴趣的:(Java可变参数列表)