以下方法中的3个点是什么意思?
public void myMethod(String... strings){
// method body
}
Run Code Online (Sandbox Code Playgroud) 我在Android文档中阅读有关AsyncTask的内容.
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");
}
}
Run Code Online (Sandbox Code Playgroud)
问题是doInBackground(URL... urls) …
当我用Java编写构造函数时,如下所示:
import java.io.IOException;
import java.io.OutputStream;
public class MultiOutputStream extends OutputStream{
OutputStream[] oStream;
public MultiOutputStream(OutputStream oStream) {
this.oStream = oStream;
// TODO Auto-generated constructor stub
}
@Override
public void write(int arg0) throws IOException {
// TODO Auto-generated method stub
}
}
Run Code Online (Sandbox Code Playgroud)
Eclipse现在说:类型不匹配:无法从OutputStream转换为OutputStream [].所以Eclipse修正了我的构造函数,如下所示:
import java.io.IOException;
import java.io.OutputStream;
public class MultiOutputStream extends OutputStream{
OutputStream[] oStream;
public MultiOutputStream(OutputStream... oStream) {
this.oStream = oStream;
// TODO Auto-generated constructor stub
}
@Override
public void write(int arg0) throws IOException {
// TODO Auto-generated method …Run Code Online (Sandbox Code Playgroud)