可变长度参数案例:
package com.javaSe.reflect; /* 可变长参数 int... args 这就是可变长参数 语法是:类型... (注意:一定是3个点。) 1 可变长度参数要求的参数个数是0~n个。 2 可变长度参数在参数列表中必须在最后一个位置上,而且可变长度参数只能有1个。 3 可变长度参数可以当做一个数组来看待。 */ public class ArgsTest { public static void main(String[] args) { m(); m(10); m(10,20); // 编译报错 // m("abc"); m2(100); m2(200,"abc"); m2(200,"abc","def"); m2(200,"abc","def","xyz"); m3("aa","bb","cc","ee","gg"); // 也可以传一个数组进去 String[] strs = {"a","b","c","d","e"}; m3(strs); // 直接传一个数组 m3(new String[]{"我","是","中","国","人"});// 没必要 m3("我","是","中","国","人"); } public static void m(int... args){ System.out.println("m方法执行了"); } // 可变长度参数在参数列表中必须在最后一个位置上 // public static void m2(String... args1, int... args2){ } public static void m2(int a,String... args1){ } public static void m3(String... args1){ // args1有length属性,说明args1是一个数组! // 可以将可变长度参数当做一个数组来看 for (int i = 0; i < args1.length; i++) { System.out.println(args1[i]); } } }