一、可变个数的参数
在Java中,存在一种方法可以传递可变个数参数的方法,意思是可以得到不同个数的参数。
一般情况我们使用方法一,而方法二是Java特有的:
import java.sql.SQLOutput;
public class Kebiangeshu {
//我们能够打印的信息都来源于方法的参数也就是形参的传递
//可能有一种情况要给方法传递不同的参数,想要给方法传递多个参数
//方法1:使用传统的数组来传多个参数
public void printInfo(String[] args){
for (int i=0;i<args.length;i++) {
System.out.println(args[i]);
}
}
//方法2:使用Java特有的,语法是“数据类型... 名称”的方法,使用时与数组的使用方式相同(也就是下面的for循环)
public void printInfo1(String... args){
for (int i=0;i<args.length;i++){
System.out.println(args[i]);
}
}
//int也可以使用
public void printInfo2(int... i){ }
//当有多个参数要传进去的时候,可变参数(点点点)要放在最后面
public void printInfo3(int q,String... args){
for (int i=0;i<args.length;i++){
System.out.println(args[i]);
}
}
}
public class Testkebian {
public static void main(String[] args) {
Kebiangeshu k3=new Kebiangeshu();
//方法1的测试:
String[] ss=new String[]{"张三","15633338888","li"};
k3.printInfo(ss);
String[] ss1=new String[]{"郑州市xxx","963855","男","rap"};
k3.printInfo(ss1);
//方法2的测试:
//方法2可以不创建(或者说是定义)数组(String[] ss2=new String[]{}),直接传递字符串(第13行)
k3.printInfo1("李四","女");
String[] ss2=new String[]{"李四","女","789456","跳"};
k3.printInfo1(ss2);
//方法2也可以不填参数,空的也可以:
k3.printInfo1();
//方法1就不行了,他要填一个null
k3.printInfo(null);
}
}
运行截图: