Java - 可變參數

* 可變參數:JDK1.5之後出現的新特性
* 使用前提:
*       當方法的參數列表數據類型已經確定,但是參數的個數不確定,就可以使用可變參數
* 使用格式:定義方法時使用
*       修飾符 返回值類型 方法名(數據類型...變量名){}
* 可變參數的原理:
*       可變參數底層就是一個數組,根據傳遞參數個數不同,會創建不同長度的數組,來存儲這些參數
*       傳遞的參數個數,可以是0個(不傳遞),1,2...多個
* 可變參數的注意事項:
*       1.一個方法的參數列表,只能有一個可變參數
*       public static int method(int...a, String...b){}//錯誤的
*       public static int method(int a, char s, String...b){}//正確的
*       2.如果方法的參數有多個,那麼可變參數必須寫在參數列表的末尾
* 可變參數的特殊寫法(終極寫法):
*       public static void method(Object...ob){}

 

import java.util.*;
/*

*/
public class Main {
    /*
    //定義一個方法,計算兩個int類型整數的和
    public static int add(int a, int b){
        return a + b;
    }
    //定義一個方法,計算三個int類型整數的和
    public static int add(int a, int b, int c){
        return a + b + c;
    }
    */
    /*
    * 定義計算(0-n)整數和的方法
    * 已知:計算整數的和,數據類型已經確定爲int
    * 但是參數的個數不確定,不知道要計算幾個整數的和
    * 這種情況下就可以使用可變參數
    * add();就會創建一個長度爲0的數組,new int[0];
    * add(10);就會創建一個長度爲1的數組,new int[]{10};
    * add(10, 20);就會創建一個長度爲2的數組,new int[]{10, 20};
    * */
    public static int add(int...arr){
        //System.out.println(arr);//[I@1b6d3586 底層是一個數組
        //System.out.println(arr.length);//0

        //定義一個初始化變量,記錄累加求和
        int sum = 0;
        //遍歷數組,獲取數組中的每一個元素
        for (int i : arr){
            sum += i;
        }
        return sum;
    }
    public static void main(String[] args) {
        int i = add(1, 2, 3, 4, 5);
        System.out.println(i);
    }
}

 

發佈了424 篇原創文章 · 獲贊 102 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章