在 Kotlin 和 Scala 中,我们的flatMap函数的工作原理如下:
val listOfMaps = listOf(
mapOf("a" to 1, "b" to 2, "c" to 10),
mapOf("a" to 3, "b" to 4, "d" to 99),
)
listOfMaps.flatMap { listOf(it["a"], it["b"]) }
Run Code Online (Sandbox Code Playgroud)
[1, 2, 3, 4]
Run Code Online (Sandbox Code Playgroud)
我正在寻找的是完全相同的函数,但是在 Groovy 中:
[[a:1,b:2,c:10],[a:3,b:4,c:99]].flatMap { [it.a, it.b] }
Run Code Online (Sandbox Code Playgroud)
我需要的函数在 Groovy 中存在,但它的名称不同 - collectMany。
[[a:1,b:2,c:10],[a:3,b:4,c:99]].collectMany { [it.a, it.b] }
Run Code Online (Sandbox Code Playgroud)
[1, 2, 3, 4]
Run Code Online (Sandbox Code Playgroud)