可變參數 可變參數的特點: 那麼可不可以使用多個可變參數作為入參呢?答案是不可以的,原因跟上一個錯誤差不多,這種可變參數需要放到最後一個入參,多個可變參數,不可能都最為最後一個入參。相較於String[]這種形式的入參,我理解的優勢大概就是可以多個String傳入,也可以Sting[]傳入,就是te ...
可變參數
java1.5增加了新特性:可變參數:適用於參數個數不確定,類型確定的情況,java把可變參數當做數組處理。
註意:可變參數必須位於最後一項。
原因:當可變參數個數多餘一個時,必將有一個不是最後一項,所以只支持有一個可變參數。因為參數個數不定,所以當其後邊還有相同類型參數時,java無法區分傳入的參數屬於前一個可變參數還是後邊的參數,所以只能讓可變參數位於最後一項。
可變參數的特點:
(1)只能出現在參數列表的最後;
(2)...位於變數類型和變數名之間,前後有無空格都可以;
(3)調用可變參數的方法時,編譯器為該可變參數隱含創建一個數組,在方法體中以數組的形式訪問可變參數。
public static void main(String[] args) {
System.out.println("test1:");
test(1,"a","b","c","d");
System.out.println("test2:");
test(2,new String[] {"a", "b", "c"});
}
/**
* 測試方法
* @param params 參數
* */
public static void test(int intParam,String... params){
System.out.println("int:"+intParam);
//遍歷參數內容
for(String temp : params){
System.out.println(temp);
}
System.out.println();
結果:
test1:
int:1
a
b
c
d
test2:
int:2
a
b
c
那麼可不可以使用多個可變參數作為入參呢?答案是不可以的,原因跟上一個錯誤差不多,這種可變參數需要放到最後一個入參,多個可變參數,不可能都最為最後一個入參。相較於String[]這種形式的入參,我理解的優勢大概就是可以多個String傳入,也可以Sting[]傳入,就是test1的調用入參這樣。
參考
原文:https://blog.csdn.net/a290450134/article/details/82050625