java 传参数时 类型后跟 3个点 "..." 的意义

时间:2023-03-08 23:53:03
java 传参数时 类型后跟 3个点 "..." 的意义

对照代码和运行结果便知"..." 的意义

 import java.util.ArrayList;

 public class StringDemo {
public static void main(String[] args) {
testPoint("LOL"); //一个参数传入
testPoint("L","O","L"); //3个String参数传入
testPoint(new String[] {"L","O","L"}); //可以看到传入三个String参数和传入一个长度为3的数组结果一样 testPoint(6);
testPoint(6,6,6);
testPoint(new Integer[] {6,6,6}); } public static void testPoint(String ...s) {
if(s.length == 0) {
System.out.println("没有参数传入!");
}else if(s.length == 1) {
System.out.println("有一个参数传入,它是: "+s[0]);
System.out.println("------------------------");
}else {
System.out.println("the input String is-->");
for(int i = 0;i < s.length;++i) {
System.out.println("第" + (i+1) +"个参数是"+s[i]+";");
}
}
} public static void testPoint(Integer ...itgr) {
if(itgr.length == 0) {
System.out.println("没有整数传入!");
}else if(itgr.length == 1) {
System.out.println("有一个整数传入,它是: "+itgr[0]);
System.out.println("------------------------");
}else {
System.out.println("the input String is-->");
for(int i = 0;i < itgr.length;++i) {
System.out.println("第" + (i+1) +"个整数是"+itgr[i]+";");
}
}
} }

运行结果如下:

有一个参数传入,它是: LOL
------------------------
the input String is-->
第1个参数是L;
第2个参数是O;
第3个参数是L;
the input String is-->
第1个参数是L;
第2个参数是O;
第3个参数是L;
有一个整数传入,它是: 6
------------------------
the input String is-->
第1个整数是6;
第2个整数是6;
第3个整数是6;
the input String is-->
第1个整数是6;
第2个整数是6;
第3个整数是6;