ярлык для создания карты из списка в groovy?

Обратите внимание на "инъекцию". Настоящие jdk фанаты функционального программирования collections называют это «сворачиванием».

columns.inject([:]) { memo, entry ->
    memo[entry.name] = entry.val
    return memo
}

И javax пока вы занимаетесь этим, вы, вероятно, захотите jdk определить методы как категории, а java-libraries не прямо в метаклассе. Таким javax образом, вы можете определить java его один раз для всех коллекций:

class PropertyMapCategory {
    static Map mapProperty(Collection c, String keyParam, String valParam) {
        return c.inject([:]) { memo, entry ->
            memo[entry[keyParam]] = entry[valParam]
            return memo
        }
    }
}

Пример java использования:

use(PropertyMapCategory) {
    println columns.mapProperty('name', 'val')
}

java

collections

groovy

expandometaclass

2022-09-14T08:58:03+00:00