可變參數
JDK1.5以後引入了可變參數的語法。
使用場景
如果我麼定義了一個方法,要傳遞多個參數,並且類型一致,但我們不確定每一次調用需要傳遞多少個參數。
雖然我們很容易想到可以使用傳遞一個數據的方式解決,但是可能會引發空指針的錯誤。同時也需要更多的代碼去取參數。
因此,java引入了一個更加簡潔語法規則。
格式
修飾符 返回值類型 方法名稱(數據類型 ... 變量名稱){
...
}
特點
可以傳遞數組、可以傳遞參數列表,甚至可以不傳遞任何參數。
注意事項
- 可變參數本質是數組
- 含有可變參數的方法,調用時,可以傳遞數組,可以傳遞參數列表(多個參數之間用逗號隔開),也可以不傳參
- 方法的可變參數類型只能有一個
- 除了一個可變參數之外還需要定義其他可變參數需要定義在可變參數前面
修飾符 返回值類型 方法名稱(數據類型 變量,數據類型 ... 變量名稱){
...
}
應用場景:
Collections類靜態方法
public static boolean addAll(Collection<T> c,T ... elements)
將所有指定元素添加到指定collection中
參數:
- Collection c:接口,傳遞實現類對象
- T … elements:可變參數,可以傳遞數組,可以傳遞參數列表,可以不傳參