Java1.5 提供了一個叫varargs的新功能,就是可變長度的參數。
"Varargs"是 “variable number of arguments”的意思。有時候也被簡單的稱為 “variable arguments”。
定義實參個數可變的方法:隻要在一個形參的"類型"與"參數名"之間加上三個連續的"."(即"...",英文裡的句中省略号),就可以讓它和不确定個實參相比對。
以下執行個體建立了 sumvarargs() 方法來統計所有數字的值。
我們在這裡的 Main 方法中添加了 new int[]{10, 12, 33, 7} 4 個參數,實際上你可以在這裡持續添加不同的參數,在計算 sum 的方法中都可以根據你添加的參數來進行處理。
GIT
請參考 GitHub 上的源碼代碼:
https://github.com/cwiki-us/java-tutorial/blob/master/src/main/java/com/ossez/lang/tutorial/usecases/VarargsCase.javaSRC
package com.ossez.lang.tutorial.usecases;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
-
variable arguments use case
*/
public class VarargsCase {
private static final Logger logger = LoggerFactory.getLogger(VarargsCase.class);
/**
* sumVarargs
*
* @param intArrays
* @return
*/
static int sumVarargs(int... intArrays) {
int sum, i;
sum = 0;
for (i = 0; i < intArrays.length; i++) {
sum += intArrays[i];
}
return (sum);
}
/**
* Main Function
*
* @param args
*/
public static void main(String args[]) {
int sum = 0;
sum = sumVarargs(new int[]{10, 12, 33, 7});
logger.debug("The Sum of the arrays: {}", sum);
}
}
OUTPUT
程式運作的輸出結果為:
2020/01/27 14:33:52 DEBUG [com.ossez.lang.tutorial.usecases.VarargsCase] - The Sum of the arrays: 62
https://www.cwiki.us/pages/viewpage.action?pageId=57933901