不定长参数做用

2022年01月16日 阅读数:2
这篇文章主要向大家介绍不定长参数做用,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

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

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

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

✿ 解决:先将数组转成集合listVar2,而后集合List.addAll(集合listVar2),就能够将数组的每一个元素变成集合中的每一个元素ui

一、方法一个参数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 + "%");
	}

二、方法不定长参数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 + "%");
	}