可变参数
在JDK1.5之后,如果我们定义一个方法需要接受多个参数,并且多个参数类型一致,我们可以对其简化成如下格式:
修饰符 返回值类型 方法名(参数类型... 形参名){ }
其实这个书写完全等价于
修饰符 返回值类型 方法名(参数类型[] 形参名){ }
只是后面这种定义,在调用时必须传递数组,而前者可以直接传递数据即可。
JDK1.5以后。出现了简化操作。... 用在参数上,称之为可变参数。
例如:利用可变参数求和
/* 可变参数:是jdk1.5之后出现的新特性 使用前提: 当方法的参数列表数据类型已经确定,但是参数的个数不确定,就可以使用可变参数 使用格式:定义方法时使用 修饰符 返回值类型 方法名(数据类型...变量名) 可变参数的原理: 可变参数的底层就是一个数组,根据传递参数的个数不同,会创建不同长度的数组,来存储这些参数 传递的参数个数可以是0个、多个 */ public class DemoVarArgs { public static void main(String[] args) { int s = add(1, 2, 3); System.out.println("和为:" + s); } public static int add(int... arr) { int sum = 0; for (int i : arr) { sum += i; } return sum; } }
可变参数的注意事项:
1. 一个方法的参数列表,只能有一个可变参数
2. 如果方法的参数有多个,那么可变参数必须写在参数列表的末尾