aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/util/CousCousMaps.java
blob: 5fb4dca082bb4950ff2e4a1b2c1bbf9faee0c757 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
package org.zwobble.couscous.util;

import java.util.Map;
import java.util.function.Function;

import static java.util.stream.Collectors.toMap;

public class CousCousMaps {
    public static <K1, K2, V> Map<K2, V> mapKeys(Map<K1, V> map, Function<K1, K2> func) {
        return map.entrySet()
            .stream()
            .collect(toMap(entry -> func.apply(entry.getKey()), entry -> entry.getValue()));
    }
}