List<Map> source = [[value: 1]] List<Map> mapList = [] println "Using direct assignment" for(int i = 0;i<5;i++){ def target = source.find{it.value == 1} target.put('index', i) mapList.add(target) } mapList.each{ println it.hashCode() }