天天看點

Java Varargs 可變參數使用

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.java

SRC

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