Java 變長引數Varargs
阿新 • • 發佈:2019-02-03
Varargs (variable arguments)可變長引數是Java 1.5引入的特性。
方法的形參如print(String ... s),實參為任意數目的值。
輸出:package semantics.statement; 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用到了變長引數。不記得《程式設計導論》中講了變長引數沒有,補充一下先】
注意:
- 變長引數要作為方法的最後的形參;
- 避免過載編譯錯誤。