【问题标题】:How do i get Vector<type> Arraylist<type> as return of call()?我如何获得 Vector<type> Arraylist<type> 作为 call() 的返回?
【发布时间】:2013-04-30 01:04:35
【问题描述】:

如何使以下 Java 代码工作:

public class Worker implements Callable<myObject>{

   @Override
   public ArrayList<myObject> call() throws Exception {
      ArrayList<myObject> lst_MyObjects= new ArrayList<myObject>();     
      return lst_MyObjects;
   }
}

错误:返回类型与Callable.call()不兼容

我只想返回一个特定类型的容器(Vector&lt;&gt; / ArrayList&lt;&gt; 等)

【问题讨论】:

标签: java android asynchronous callable


【解决方案1】:

就用这个吧:

public class Worker implements Callable<List<myObject>>{

通过使用List,您可以返回ArrayListVector,但建议使用ArrayList 而不是Vector

【讨论】:

  • 哦..真是个愚蠢的错误..非常感谢您的快速响应
【解决方案2】:

只需更改方法call()的返回类型

ArrayList&lt;myObject&gt;Object

【讨论】:

    【解决方案3】:

    必须是Callable&lt;List&lt;myObject&gt;&gt;,因为ArrayList&lt;myObject&gt;是返回类型,而不是myObject。

    【讨论】:

    • 如果您使用Callable&lt;ArrayList&lt;myObject&gt;&gt;,则无法返回Vector。最好使用Callable&lt;List&lt;myObject&gt;&gt;
    • 好点,发布此内容时没有考虑到此限制。
    猜你喜欢
    • 1970-01-01
    • 2011-10-03
    • 2014-08-24
    • 2015-04-02
    • 2019-01-17
    • 1970-01-01
    • 1970-01-01
    • 2013-06-02
    相关资源
    最近更新 更多