如何在方法返回值的lambda表达式中添加延迟?

时间:2015-12-18 07:16:53

标签: java lambda

对不起,或许,显而易见的问题,但我无法在lambda表达式中添加延迟。我试过了:

Callable<int> task = () -> {TimeUnit.SECONDS.sleep(1); concurrentHashMap.get(treeNum).getApples()};

并且IDE显示“缺少退货声明”。 如何添加延迟?

1 个答案:

答案 0 :(得分:1)

Lambda表达式可以像这样p -> inlineMethod()编写,即只有当只有一个语句时才使用隐式返回语句。

否则,您必须拥有类似p -> { [...]; return null; }的代码块。在这种情况下,您必须将return语句(一个或多个)显式添加到块中。