[英]What is the meaning Params… ? in android
我對Android dev很新,所以今天我偶然發現了android文檔中的這段代碼
Result doInBackground (Params... params)
Params...
是什么意思Params...
? 與Params
嗎? 但是當使用Params
(沒有......)時,它會拋出錯誤而不是覆蓋抽象。
這讓我很困惑。
它是一個Java概念,稱為var args
。 作為方法參數傳遞某種類型的數組是糖語法。
所以當你說
Result doInBackground (Integer... args)
{
Integer [] vals=args;
}
並且您可以訪問該數組中的值。
就AsyncTask的方法而言,您可以將參數類型從Params
更改為您需要的類型。 Params
只是一個模板,您需要在實施過程中進行更改。
AsyncTask是一個有三種方法的類。 在OnPreExecute()之后調用DoInBackground()。 在某些情況下,onPreExecute可能會返回一些值。 doInBackground()可以使用Params字段捕獲此值。 這個參數可以是Int,Strings,Collection,Context。
注意:與onPOstExecute(Params params)類似。 此參數是doInBackground中返回的值。
如果你沒有任何返回值,那么你不需要在這些方法中使用params值。
Params...
這里指的是參數。 ...
是表示數組的一種方式。
Result doInBackground (Params... params)
這意味着params
是Params
類型的數組。 默認情況下,函數doInBackground
接收的值存儲在params[0]
。 有時函數可能在執行時接收另一個值,它將存儲在更高的索引中。
希望能解決你的問題:-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.