有時我們在定義乙個方法時,方法引數設定可能會根據呼叫情況的不同,需要的引數個數也不同,這時候引數列表其實就需要可變長度的引數列表。
可變引數其實相當於陣列引數,但是與其不同的是,可變引數在方法呼叫時,是可以不傳遞任何值的。
下面是可變引數方法的乙個示例:
public static void dosomthing(string... args)
system.out.println(thread.currentthread().getname() + "::end.");
}我們寫個main方法來呼叫看看:
public static void main(string args)
}.start();
new thread()
}.start();
new thread()
}.start();
}執行結果:
thread-0::begin.
thread-0::end.
thread-1::begin.
thread-1::test
thread-1::end.
thread-2::begin.
thread-2::test1
thread-2::test2
thread-2::end.
可變長引數方法有時候既方便又實用,能將**簡化。
java 可變長引數
有時候,我們傳入到方法的引數的個數是不固定的,為了解決這個問題,我們一般採用下面的方法 1 過載,多過載幾個方法,盡可能的滿足引數的 個數。顯然這不是什麼好辦法。2 將引數作為乙個陣列傳入。雖然這樣我 們只需乙個方法即可,但是,為了傳遞這個陣列,我們需要先宣告乙個陣列,然後將引數乙個乙個加到數 組中...
可變長引數方法
可變長引數 語法 型別.變數名 只能3個點,不能多也不能少 位置 必須在引數列表的最後 乙個方法最多只能有乙個可變長引數 優先順序 如果有精確匹配得方法則呼叫最精確的那個。特性 可變長引數可以等同看作陣列 定義乙個陣列,可以把陣列當成引數轉進去。public class variablearitym...
Java可變長引數的使用
1.可變長引數在定義的時候只能放在方法的最後乙個引數位置,乙個方法只允許乙個可變長引數 2.可變長引數本質就是陣列,因此如下方式的定義是錯誤的 public class thinking public void test string p 3.呼叫的時候會優先選擇固定長度引數的方法,如下面 的輸出就...