一,不定長參數的規定
一個方法只能有一個不定長參數,並且這個不定長參數必須是該方法的最后一個參數.
示例:
public class VariArgs { public static void main(String[] args) { test(); test("aaa"); test("aaa", "bbb"); test("aaa", "bbb", "ccc"); } public static void test(String... args) { System.out.println(args.getClass()); for (String arg : args) { System.out.println(arg); } } }
二,注意事項
1.在調用方法的時候,如果能夠和固定參數的方法匹配,也能夠與可變長參數的方法匹配,則選擇固定參數的方法
public class VarArgsTest { public void print(String... args) { for (int i = 0; i < args.length; i++) { System.out.println(args[i]); } } public void print(String test) { System.out.println("----------"); } public static void main(String[] args) { VarArgsTest test = new VarArgsTest(); test.print("hello"); test.print("hello", "alexia"); } }
結果:
2.如果要調用的方法可以和兩個可變參數匹配,則出現錯誤
public class VarArgsTest1 { public void print(String... args) { for (int i = 0; i < args.length; i++) { System.out.println(args[i]); } } public void print(String test, String... args) { System.out.println("----------"); } public static void main(String[] args) { VarArgsTest1 test = new VarArgsTest1(); test.print("hello"); test.print("hello", "alexia"); } }
錯誤:
http://blog.csdn.net/djun100/article/details/10134419
http://www.cnblogs.com/lanxuezaipiao/p/3190673.html