Groovy Java 8可选组合语句


Object Value = "Test";
Map<String, Object> metaMapping = definition.getMeta();
return Optional.ofNullable(metaMapping).map(mm -> mm.get(String.valueOf(value))).orElse(value);

我正在尝试将上面的java8代码转换为Groovy。它为"->"提供了意外的令牌错误。有人能提供参考吗。

您可以这样做:

println Optional.ofNullable(metaMapping).map{
mm -> mm.get(String.valueOf(value))
}.orElse(value)

根据您的要求,您还可以执行以下操作:

metaMapping = definition.getMeta().withDefault { key -> key }
println metaMapping.get(value)

最新更新