微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将Scala选项转换为Java可选

我需要将 Scala Option转换为 Java Optional.我设法写了这个:

public <T> Optional<T> convertOption2Optional(Option<T> option) {
    return option.isDefined() ? Optional.of(option.get()) : Optional.empty();
}

但我不喜欢它.

一个简单的方法,或内置的scala转换器?
我正在寻找类似的东西:

Options.asJava(option);

解决方法

我能用Java思考的最短路径是:

Optional.ofNullable(option.getorElse(null))

如果你在Scala中编写转换,@RégisJean-Gilles实际上建议更短:

Optional.ofNullable(option.orNull)

顺便说一下,在Scala 2.12尚未正式发布之前,你必须知道Scala不支持Java 8.查看docs(可能会在发布之前发生变化),JavaConversions中没有这样的转换.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐