我需要将 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 直到 Scala 2.12 才支持 Java 8,而 Scala 2.12 尚未正式发布。看着 docs (在发布之前可能会更改)JavaConversions
中没有此类转换。
关于java - 将 Scala 选项转换为 Java 可选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38325656/