0

キーのマップ値を取得する代わりに、キーのリストまたはキーのセットのすべての値を取得する方法。

4

2 に答える 2

2
def map = [1:"A", 2:"B", 3:"C", 4:"D"]
def keySet = [1, 2, 3]

assert ['A', 'B', 'C'] == keySet.collect{map[it]}
assert ['A', 'B', 'C'] == map.collectMany{k,v -> k in keySet ? [v] : []}
assert ['A', 'B', 'C'] == map.findResults{k,v -> k in keySet ? v : null}

この質問に時間を割けば、他の方法はほとんどありません。:)

于 2013-10-10T01:15:02.313 に答える