Java 变长參数Varargs

Posted gcczhongduan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 变长參数Varargs相关的知识,希望对你有一定的参考价值。

Varargs (variable arguments)可变长參数是Java 1.5引入的特性。

方法的形參如print(String ... s),实參为随意数目的值。

public class VarargsDemo{
    public static void print(String ... s){
        for(String a: s)
            System.out.print(a);
    }
    public static void main(String[] args) {
        print("a", "\n");
        print("a", "b", "\n");
        print("a", "b","c\n");
    }    
}
输出:

a
ab
abc

工作原理:

1.以调用方传递的參数的数目为长度创建一个数组;

2.将实參的值放入数组中,

3.将数组(的引用)传递给被调方法。


样例:

String.format(String format, Object... args)

反射机制中。

【7.3.2中非常多API用到了变长參数。不记得《编程导论》中讲了变长參数没有,补充一下先】


注意:

  • 变长參数要作为方法的最后的形參;
  • 避免重载编译错误。

技术分享







以上是关于Java 变长參数Varargs的主要内容,如果未能解决你的问题,请参考以下文章

Java语法糖初探--变长参数

变长参数

js常用代码片段

java语言中的varargs

可以直接拿来用的15个jQuery代码片段

malloc()參数为0的情况