0

メソッド protected Long doInBackground(URL... urls) {} があります。URL... urls とはどういう意味ですか?

 private class DownloadFilesTask extends AsyncTask<URL, Integer, Long> {
     protected Long doInBackground(URL... urls) {
         int count = urls.length;
         long totalSize = 0;
         for (int i = 0; i < count; i++) {
             totalSize += Downloader.downloadFile(urls[i]);
             publishProgress((int) ((i / (float) count) * 100));
             // Escape early if cancel() is called
             if (isCancelled()) break;
         }
         return totalSize;
     }

     protected void onProgressUpdate(Integer... progress) {
         setProgressPercent(progress[0]);
     }

     protected void onPostExecute(Long result) {
         showDialog("Downloaded " + result + " bytes");
     }
 }

これらはhttp://developer.android.com/reference/android/os/AsyncTask.htmlからのものです

4

1 に答える 1

1

「type ... name」構文は、可変長引数リストの Java です。0 個以上の URL 値を意味します。これらは、URL (この場合) をメソッド内の配列 (URL[] urls) として扱うことによって参照されます。AsyncTask の場合、.execute() メソッドで 1 つ以上の URL を渡します: .execute(url1, url2, url3)。

于 2013-05-18T03:39:32.733 に答える