diff options
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java')
| -rw-r--r-- | BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java | 65 |
1 files changed, 28 insertions, 37 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java index 62c39af..c4f0ff1 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java +++ b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java @@ -1,13 +1,13 @@ package bjc.utils.funcdata; -import bjc.utils.data.IPair; - import java.util.HashMap; import java.util.Map; import java.util.function.BiConsumer; import java.util.function.Consumer; import java.util.function.Function; +import bjc.utils.data.IPair; + /** * Basic implementation of {@link IMap} * @@ -35,10 +35,10 @@ public class FunctionalMap<KeyType, ValueType> implements IMap<KeyType, ValueTyp * The entries to put into the map */ @SafeVarargs - public FunctionalMap(IPair<KeyType, ValueType>... entries) { + public FunctionalMap(final IPair<KeyType, ValueType>... entries) { this(); - for (IPair<KeyType, ValueType> entry : entries) { + for (final IPair<KeyType, ValueType> entry : entries) { entry.doWith((key, val) -> { wrappedMap.put(key, val); }); @@ -51,9 +51,8 @@ public class FunctionalMap<KeyType, ValueType> implements IMap<KeyType, ValueTyp * @param wrap * The map to wrap */ - public FunctionalMap(Map<KeyType, ValueType> wrap) { - if (wrap == null) - throw new NullPointerException("Map to wrap must not be null"); + public FunctionalMap(final Map<KeyType, ValueType> wrap) { + if (wrap == null) throw new NullPointerException("Map to wrap must not be null"); wrappedMap = wrap; } @@ -64,7 +63,7 @@ public class FunctionalMap<KeyType, ValueType> implements IMap<KeyType, ValueTyp } @Override - public boolean containsKey(KeyType key) { + public boolean containsKey(final KeyType key) { return wrappedMap.containsKey(key); } @@ -74,27 +73,26 @@ public class FunctionalMap<KeyType, ValueType> implements IMap<KeyType, ValueTyp } @Override - public void forEach(BiConsumer<KeyType, ValueType> action) { + public void forEach(final BiConsumer<KeyType, ValueType> action) { wrappedMap.forEach(action); } @Override - public void forEachKey(Consumer<KeyType> action) { + public void forEachKey(final Consumer<KeyType> action) { wrappedMap.keySet().forEach(action); } @Override - public void forEachValue(Consumer<ValueType> action) { + public void forEachValue(final Consumer<ValueType> action) { wrappedMap.values().forEach(action); } @Override - public ValueType get(KeyType key) { - if (key == null) - throw new NullPointerException("Key must not be null"); + public ValueType get(final KeyType key) { + if (key == null) throw new NullPointerException("Key must not be null"); if (!wrappedMap.containsKey(key)) { - String msg = String.format("Key %s is not present in the map", key); + final String msg = String.format("Key %s is not present in the map", key); throw new IllegalArgumentException(msg); } @@ -109,7 +107,7 @@ public class FunctionalMap<KeyType, ValueType> implements IMap<KeyType, ValueTyp @Override public IList<KeyType> keyList() { - FunctionalList<KeyType> keys = new FunctionalList<>(); + final FunctionalList<KeyType> keys = new FunctionalList<>(); wrappedMap.keySet().forEach(key -> { keys.add(key); @@ -119,23 +117,21 @@ public class FunctionalMap<KeyType, ValueType> implements IMap<KeyType, ValueTyp } @Override - public <MappedValue> IMap<KeyType, MappedValue> transform(Function<ValueType, MappedValue> transformer) { - if (transformer == null) - throw new NullPointerException("Transformer must not be null"); + public <MappedValue> IMap<KeyType, MappedValue> transform(final Function<ValueType, MappedValue> transformer) { + if (transformer == null) throw new NullPointerException("Transformer must not be null"); return new TransformedValueMap<>(this, transformer); } @Override - public ValueType put(KeyType key, ValueType val) { - if (key == null) - throw new NullPointerException("Key must not be null"); + public ValueType put(final KeyType key, final ValueType val) { + if (key == null) throw new NullPointerException("Key must not be null"); return wrappedMap.put(key, val); } @Override - public ValueType remove(KeyType key) { + public ValueType remove(final KeyType key) { return wrappedMap.remove(key); } @@ -146,7 +142,7 @@ public class FunctionalMap<KeyType, ValueType> implements IMap<KeyType, ValueTyp @Override public IList<ValueType> valueList() { - FunctionalList<ValueType> values = new FunctionalList<>(); + final FunctionalList<ValueType> values = new FunctionalList<>(); wrappedMap.values().forEach(value -> { values.add(value); @@ -159,26 +155,21 @@ public class FunctionalMap<KeyType, ValueType> implements IMap<KeyType, ValueTyp public int hashCode() { final int prime = 31; int result = 1; - result = prime * result + ((wrappedMap == null) ? 0 : wrappedMap.hashCode()); + result = prime * result + (wrappedMap == null ? 0 : wrappedMap.hashCode()); return result; } @Override - public boolean equals(Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (!(obj instanceof FunctionalMap)) - return false; + public boolean equals(final Object obj) { + if (this == obj) return true; + if (obj == null) return false; + if (!(obj instanceof FunctionalMap)) return false; - FunctionalMap<?, ?> other = (FunctionalMap<?, ?>) obj; + final FunctionalMap<?, ?> other = (FunctionalMap<?, ?>) obj; if (wrappedMap == null) { - if (other.wrappedMap != null) - return false; - } else if (!wrappedMap.equals(other.wrappedMap)) - return false; + if (other.wrappedMap != null) return false; + } else if (!wrappedMap.equals(other.wrappedMap)) return false; return true; } } |
