将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中没有这样的转换.

相关文章

共收录Twitter的14款开源软件,第1页Twitter的Emoji表情 Tw...
Java和Scala中关于==的区别Java:==比较两个变量本身的值,即...
本篇内容主要讲解“Scala怎么使用”,感兴趣的朋友不妨来看看...
这篇文章主要介绍“Scala是一种什么语言”,在日常操作中,相...
这篇文章主要介绍“Scala Trait怎么使用”,在日常操作中,相...
这篇文章主要介绍“Scala类型检查与模式匹配怎么使用”,在日...