可变参数:
1 public class TestDemo {
2
3 public static void main(String[] args) {
4 // add传递不同数量的参数
5 System.out.println(add(new int [] {1,2,3,4,5,6})) ;
6 System.out.println(add(new int [] {232,3,45})) ;
7 }
8 /**
9 * 实现任意多个的整形数据的相加操作
10 * @param data 由于要接收多个整形数据,所以使用数据形式完成接受
11 * @return 翻译多个整形数据的累加结果
12 */
13 public static int add(int [] data) {
14 int sum = 0 ;
15 for (int x = 0 ; x < data.length ; x ++) {
16 sum += data[x] ;
17 }
18 return sum ;
19 }
20 }
上例程序实现的是一个方法接受不同长度的数据内容,并将内容值进行累加处理;之所以使用数组,是因为多个参数无法具体的描述,只可以用数组的方式来接收多个不定的参数。
下述为定义可变参数方法的格式说明:
[public | protected | private] [static] [final] [abstract(抽象类)] 返回值类型 方法名称 (【参数类型 ... 变量】) { return [返回值] ;}
使用可变参数方法定义更改后的代码如下:
public class TestDemo {
public static void main(String[] args) {
// 可变参数支持接收数组或者逗号区分不同的参数,最后接收的还是数组
System.out.println(add(1,2,3,4,5,6)) ;
System.out.println(add(232,3,45)) ;
}
/**
* 实现任意多个的整形数据的相加操作
* @param data 由于要接收多个整形数据,所以使用数据形式完成接受
* @return 翻译多个整形数据的累加结果
*/
public static int add( int ... data ) {
// 可变参数接收后,就是一个数组
int sum = 0 ;
for (int x = 0 ; x < data.length ; x ++) {
sum += data[x] ;
}
return sum ;
}
}
开发实际中,会要求参数的个数是准确的,往往是不会应用到开发上。
小结:
1、在设计一个类的时候,可变参数绝不是优先的选择
2、可变参数属于数组的变形应用