Java的变参函数实现实际上参数是一个数组,其简单用法如下

public class Test {
    private static void variableParam(Object... args) {
        for (Object v : args) {
            System.out.print(v.toString() + " ");
        }
        System.out.println();
    }

    private static void variableParam2(int a, int... args) {
        System.out.println("a: " + a);
        System.out.print("variable params num: " + args.length);
    }

    public static void main(String[] args) {
        variableParam(1, 2.0F, 3L, 'Z');
        variableParam2('A', 2, 3, 4);
    }
}

1 2.0 3 Z
a: 65
variable params num: 3

 

基于Java的根类是Object,我们可以将变参函数类型定义为Object,这样就可以支持所有不同类型的变长参数,而且Java变参提供自动包装功能,例如int->Integer, float->Float等等。

另外,我们可以将变参和非变参结合在一起使用,例如上例中的variableParam2(),另外变参函数的传值允许为空。

posted on 2012-10-27 19:46  ZimZz  阅读(5966)  评论(0编辑  收藏  举报