所以我知道我可以将Closure(cdata
)转换为Map(toObj
)如下:
Closure cdata = {
a = 1
b = 2
c = 3
}
Map toObj = [:]
cdata.resolveStrategy = Closure.DELEGATE_FIRST
cdata.delegate = toObj
cdata()
println(toObj)
输出[a:1, b:2, c:3]
但是我的问题是如何正确地将Map转换为Closure呢?这看起来“有效”,但它并没有采用相同的方法
Map mdata = ["a":1, "b":2, "c":3]
Closure toClos = {}
mdata.every { toClos[it.key] = it.value }
这里有没有更正确的对象转换方法?
2条答案
按热度按时间zkure5ic1#
好吧...这样如何?
然而,所有这些都可以通过简单地执行以下操作来避免:
h79rfbju2#
奇怪的问题