Varargs 方法警告

Varargs methods warning

我的异步任务中有这个 doInBackground,我收到了这个 Vargas 警告:

Varargs methods should only override or be overridden by other varargs methods unlike RingBankAsyncTask.doInBackground(String[]) and AsyncTask.doInBackground(String...)

   protected String doInBackground(String[] urls){
   String result = "";
   for (int i = 0; i <= 0; i++){
     result = invokePost(urls[i], this.postData);
   }
   return result;
 }

我知道为什么会收到此警告,但是否有解决方法来消除此警告!?

改变

protected String doInBackground(String[] urls)

protected String doInBackground(String... urls)

varargs 表示不同长度的参数,因此尽管您在接收端像数组一样使用它,但您可以提供如下参数(如果您手动调用该方法):

doInbackground(val1, val2, val3);

doInbackground(new String[] { val1, val2, val3 });

通常,在覆盖方法时始终可以查看超类型,以确保匹配它的签名,对于许多其他有用的东西也有其他问题。只需确保安装了源。