Java 中的 ... 引數
三點 ...
運算子通常稱為 Varargs,它是 Variable-length Arguments
的縮寫。JDK 5 中引入了可變引數以簡化使用可變數量的引數。在此之前,我們不得不使用過載或將引數放入一個效率不高的陣列中。在以下示例中,我們將瞭解如何充分利用 Varargs。
在 Java 中的方法中使用 Varargs 接受可變數量的引數
在這個程式中,我們建立了一個名為 functionWithVarArgs()
的靜態方法,並將接收引數的型別設定為 String
後跟三個點和引數名稱 str
,這意味著我們可以傳遞任意數量的 String
輸入引數。
在 functionWithVarArgs()
方法中,我們建立了一個增強的 for
迴圈,用於列印每個 str
值。在 main()
函式中,我們首先在 functionWithVarArgs()
函式中傳遞四個引數,然後再次使用三個引數呼叫相同的函式。輸出顯示所有傳遞的引數。
public class Main {
public static void main(String[] args) {
functionWithVarArgs("String 1", "String 2", "String 3", "String 4");
functionWithVarArgs("String A", "String B", "String C");
}
static void functionWithVarArgs(String... str) {
for (String s : str) {
System.out.println(s);
}
}
}
輸出:
String 1
String 2
String 3
String 4
String A
String B
String C
在 Java 中使用具有多種型別引數的 Varargs
要使用 Varargs,我們必須遵循一些規則;第一條規則是 Varargs 必須是最後一個引數,否則編譯器會丟擲錯誤,第二條規則是方法中不能有多個 Varargs。
在下面的程式碼中,我們傳遞了兩種型別的引數,其中 str
是 String
型別並且只是一個引數。functionWithVarArgs()
方法的最後一個引數是 int
型別的 Varargs。現在在 main()
中,我們使用第一個引數作為單個值呼叫函式,第二個引數可以是可變長度的,因為它是 Vargargs
。
public class Main {
public static void main(String[] args) {
functionWithVarArgs("String 1", 1, 2);
functionWithVarArgs("String A", 10, 20, 30, 40);
}
static void functionWithVarArgs(String str, int... num) {
for (int n : num) {
System.out.println(n);
}
}
}
輸出:
1
2
10
20
30
40
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn