先定义好方法传递参数数量,但是需要传入多个参数值时---不定长参数(+将数组的每个元素变成集合中的每个元素)


注意细节:当原先方法中有操作:集合List.add(参数 var1); 这时候集合添加了一个元素(var1)

但是修改为不定长参数时: 集合List.add(不定长参数 var2); 这时候集合添加的是一个数组元素(var2),而非不定长数组var2中的每个元素被添加为集合的元素

✿ 解决:​​先将数组转成集合​​​listVar2,然后集合​​List.addAll​​​(集合listVar2),就可以​​将数组的每个元素变成集合中的每个元素​


1、方法一个参数param---用来传入一个变量,且方法中集合添加变量的操作:List.add(参数 var1);

//定义好一个参数param---用来传入一个变量
protected void addQuery(String condition, Object param) {
this.conditions.add(condition);
this.parameters.add(param);
}

//拼接关键词
if (keyword != null) {
super.addQuery("name LIKE ?","%" + keyword + "%");
}

2、方法不定长参数param---用来传入多个变量,且方法中集合添加变量的操作:

​先将数组转成集合​​​listVar2,然后集合​​List.addAll​​​(集合listVar2),就可以​​将数组的每个元素变成集合中的每个元素​
//定义好不定长参数param---用来传入多个变量
protected void addQuery(String condition, Object... param) {
//细节:不定长的参数是数组----集合parameters.add(数组)是将数组作为一个元素添加进来
//解决:先将数组转成集合,然后集合parameters.addAll(集合)
this.conditions.add(condition);
this.parameters.addAll(Arrays.asList(param));
}

//拼接关键词
if (keyword != null) {
super.addQuery("(name LIKE ? OR dormBuildId LIKE ?)","%" + keyword + "%", "%" + keyword + "%");
}


作者:一乐乐​