如何使用Java 8在ifPresent中使用相同的条件返回orElseThrow?

时间:2016-08-03 17:32:18

标签: java lambda

我在下面使用ifPresent有一个Java 8代码,我希望在相同的条件下使用orElseThrow chatSessionStore.get(group)已经返回一个Optional对象。

@Override
public void forwardMessageGroup(String group, ChatMessage message) {

    chatSessionStore.get(group).ifPresent(chatProxy -> chatProxy.sendMessage(message));

}

任何提示?

1 个答案:

答案 0 :(得分:4)

我认为你想要的只是:

chatSessionStore.get(group).orElseThrow(
      () -> new RuntimeException("No group")
).sendMessage(message);