All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.bongiorno.collections.ImprovedMap Maven / Gradle / Ivy

There is a newer version: 1.0.9
Show newest version
package org.bongiorno.collections;

import java.util.HashMap;
import java.util.function.BinaryOperator;
import java.util.function.Function;

/**
 * @author chribong
 */
public class ImprovedMap extends QuickMap {
    public ImprovedMap() {
        super(new HashMap<>());
    }

    public  ImprovedMap transform(Function fOfK, Function fOfV) {
        ImprovedMap retVal = new ImprovedMap<>();
        this.entrySet().stream().forEach(e -> retVal.put(fOfK.apply(e.getKey()), fOfV.apply(e.getValue())));
        return retVal;
    }

    public static  BinaryOperator noDupKeys() {
        return (u, v) -> {
            throw new IllegalStateException(String.format("Duplicate key %s", u));
        };
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy