如何使以下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<>
/ ArrayList<>
等。)
答案 0 :(得分:7)
请使用:
public class Worker implements Callable<List<myObject>>{
使用List
,您可以返回ArrayList
或Vector
,但建议您使用ArrayList
而不是Vector
。
答案 1 :(得分:2)
必须是Callable<List<myObject>>
,因为ArrayList<myObject>
是返回类型,而不是myObject。
答案 2 :(得分:2)
只需更改方法call()
从ArrayList<myObject>
到Object