总结:
1. public void 方法( 数据类型 ... 形参名 , 类型 有限个数形参名 ){ }
可变个数的形参定义在()的最后
2.尽可能定义使用形参为数组的方法,因为形参为。。。的包含的重载更多更灵活
3.传入形参的个数可以是0个 1个 。。。无穷个
4.一旦用了。。。作为形参定义,使用的时候可以往()里面
①直接放数组名
②在()内new一个数组
③直接把实参输入到()里
我们知道MySQL软件是由Java语言开发的,在SQL的查询语句中,SELECT XX FORM XXX WHERE XX1=xx1 XX2=xx2 ......这种筛选条件个数不确定,可由用户决定个数,在Java层面的实现原理就是“参数个数可变的方法”
第一种是用数组作为形参的老版本方法:
1.定义show方法,形参为 数组
public class StringTest{
......
}
public void show (String [] str){
System.out.println("show");
for (int j = 0; j < str.length; j++) {
System.out.print(str[j]+'\t');
}
System.out.println();
}
2.在main中写执行语句:
StringTest test = new StringTest ();
//在StringTest类中声明的方法,要使用的话必须实例化一个StringTest的对象
test.show(new String[]{"aa","bb","cc"});
String [] arr = new String [] {"dd","ee","ff"};
test.show(arr);
//错误写法: test.show("qq","ww","ee");
//因为形参只能放数组
3.结果:
public class StringTest {
public static void main(String[] args) {
StringTest test = new StringTest ();
//在StringTest类中声明的方法,要使用的话必须实例化一个StringTest的对象
test.show(new String[]{"aa","bb","cc"});
String [] arr = new String [] {"dd","ee","ff"};
test.show(arr);
}
}
第二种是以 。。。为形参的新版本万金油用法
1.下面定义了用。。。表示 0~∞个String参数的方法
public void Show(String... str) {
System.out.println("Show");
for (int j = 0; j < str.length; j++) {
System.out.print(str[j]+'\t');
}
System.out.println();
}
public void Show(int i, String... str) {
System.out.println("Show");
for (int j = 0; j < str.length; j++) {
System.out.print(str[j] + '\t' + i+'\t');
}
System.out.println();
}
不确定个 // public void show (String ... str , int i ){
数的。。 // for(int j = 0 ; j<str.length ; j++){
。必须放 // System.out.println(str[i]);
在形参最 // }
后 // }错误写法
2.mian中写执行语句
test.Show(arr);
test.Show("ee","ff","gg");
test.Show(6,"hh","ii","jj");
3.结果: