不定长参数作用
原创
©著作权归作者所有:来自51CTO博客作者一乐yile的原创作品,请联系作者获取转载授权,否则将追究法律责任
先定义好方法传递参数数量,但是需要传入多个参数值时---不定长参数(+将数组的每个元素变成集合中的每个元素)
注意细节:当原先方法中有操作:集合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 + "%");
}
作者:一乐乐