我目前正試圖讓AsyncTasks在Android中工作,並且在許多不同的教程中找到了我以前從未見過的東西。參數類型後面的`...`服務有什麼意義?
本教程中的某些方法傳遞的參數如下所示:String... arg0
,Integer... values
。
Here
是一個教程,其中一些代碼與我所描述的相似。
這是什麼意思?爲什麼...
在那裏?
我目前正試圖讓AsyncTasks在Android中工作,並且在許多不同的教程中找到了我以前從未見過的東西。參數類型後面的`...`服務有什麼意義?
本教程中的某些方法傳遞的參數如下所示:String... arg0
,Integer... values
。
Here
是一個教程,其中一些代碼與我所描述的相似。
這是什麼意思?爲什麼...
在那裏?
它被稱爲可變參數。它適用於任何類型,只要它是簽名中的參數最後一個。
基本上,任何數量的參數都放入數組中。這並不意味着它相當於一個數組。
,看起來像的方法:
void foo(int bar, Socket baz...)
將具有插座的陣列(在這個例子中)稱爲巴茲。
所以,如果我們調用foo(32, sSock.accept(), new Socket())
,我們將找到一個包含兩個Socket對象的數組。
調用它爲foo(32, mySocketArray)
將不是工作。但是,如果簽名是數組的可變參數,則可以傳遞一個或多個數組並獲得一個二維數組。例如,void bar(int bar, PrintStream[] baz...)
可以採用多個PrintStream陣列並將它們粘貼到一個單獨的PrintStream[][]
中。