关闭。这个问题需要详细或明确。它目前不接受答案。**想改进这个问题吗?**编辑这篇文章,添加细节并澄清问题。
两天前关门了。改进这个问题希望将以下for循环从Java7转换为Java8(lambda)。
for (Employee e : list) { session.evict(e); }
这里,会话是hibernate会话。我在这里的意图是将上面提到的工作java 7代码更改为具有lambda特性或方法引用的java 8。
yduiuuwa1#
可以将表达式切换到方法引用lambda:
list.forEach(session::evict);
注意,如果 Session.evict 抛出异常,然后您需要捕获/转换为 RuntimeException 为了使上面的代码能够编译,或者在循环中使用更长形式的lambda。
Session.evict
RuntimeException
list.forEach(e -> { try { session.evict(e); } catch (Exception ex) { throw new RuntimeException(ex); } });
1条答案
按热度按时间yduiuuwa1#
可以将表达式切换到方法引用lambda:
注意,如果
Session.evict
抛出异常,然后您需要捕获/转换为RuntimeException
为了使上面的代码能够编译,或者在循环中使用更长形式的lambda。