【发布时间】:2014-01-22 20:04:07
【问题描述】:
我对 Groovy 很陌生,但我无法通过网络找到我的问题的答案。
我有一张非常简单的地图:Map<String, Object>。我需要在迭代时使用一种方法更新此地图的值。我已经找到了一种方法:
Map<String, Object> newMap = myMap.each { it -> it.value = getValue(it.key) }
我不明白为什么这不起作用:
Map<String, Object> newMap = myMap.each { k,v -> v = getValue(k) }
提前致谢。
【问题讨论】:
-
出于同样的原因,在方法调用之外调用
void run( int a ) { a++ }不会更改a -
谢谢 tim_yates。如果不是评论,我会接受这个作为答案。