将值从调用方法返回到将来的对象

时间:2012-11-07 12:06:16

标签: java future java.util.concurrent

如何将调用方法中的字符串类型的迭代设置值返回到将来的object.do我需要将迭代的vales存储在数组中并返回该数组或者任何人可以帮助我

2 个答案:

答案 0 :(得分:2)

使用Callable<List<String>>,将其提交给执行者,执行者将返回Futureget()方法将返回List<String>

ExecutorService executorService = Executors.newSingleThreadExecutor();
Callable<List<String>> task = new Callable<List<String>>() {
    public List<String> call() throws Exception {
        List<String> list = new ArrayList<String>();
        // populate list
        return list;
    }
};
Future<List<String>> future = executorService.submit(task);

// the list from above, returns once execution is complete
List<String> list = future.get(); 

答案 1 :(得分:0)

使用submit()的{​​{1}}方法返回 ExecutorService对象。