【译】Java中的可变参数
译文链接
http://www.programcreek.com/2014/01/java-varargs-examples/
什么是Java可变参数
可变参数是Java 1.5引入的一个特性,它允许一个方法接受任意数量的参数。
package simplejava; public class Q25 { public static void print(String... s) {
//实际上,s是一个字符串数组 for (String a : s) System.out.println(a); } public static void main(String[] args) { print("a"); print("a", "b"); print("a", "b", "c"); } }
可变参数是如何工作的
当使用可变参数的时候,会先创建一个数组,其数组长度为参数的个数,然后将参数传到数组中,最后将该数组传给方法。
什么时候使用可变参数
正如其名,当一个方法需要处理任意数量的参数时,可变参数机制非常有用;
一个好的示例是JDK中的String.format(String format, Object... args)方法,该方法可以接收任意数量的参数进行字符串格式化,因此可以使用可变参数机制来实现。