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 | 23 |
1 files changed, 23 insertions, 0 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 fc4c4de..b505ebd 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java +++ b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java @@ -3,6 +3,7 @@ package bjc.utils.funcdata; 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.Pair; @@ -89,6 +90,18 @@ public class FunctionalMap<K, V> implements IFunctionalMap<K, V> { public int getSize() { return mapToTransform.getSize(); } + + @Override + public void forEachKey(Consumer<K> action) { + mapToTransform.forEachKey(action); + } + + @Override + public void forEachValue(Consumer<V2> action) { + mapToTransform.forEachValue((val) -> { + action.accept(transformer.apply(val)); + }); + } } private Map<K, V> wrappedMap; @@ -220,4 +233,14 @@ public class FunctionalMap<K, V> implements IFunctionalMap<K, V> { public int getSize() { return wrappedMap.size(); } + + @Override + public void forEachKey(Consumer<K> action) { + wrappedMap.keySet().forEach(action); + } + + @Override + public void forEachValue(Consumer<V> action) { + wrappedMap.values().forEach(action); + } }
\ No newline at end of file |
