- Type Parameters:
K - the Map key type
V - the Map value type
- All Implemented Interfaces:
Fn1<Fn1<? super V,? extends K>,Fn1<java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>>, Fn2<Fn1<? super V,? extends K>,java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>, Applicative<Fn1<java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>,Fn1<Fn1<? super V,? extends K>,?>>, Cartesian<Fn1<? super V,? extends K>,Fn1<java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>,Fn1<?,?>>, Cocartesian<Fn1<? super V,? extends K>,Fn1<java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>,Fn1<?,?>>, Contravariant<Fn1<? super V,? extends K>,Profunctor<?,Fn1<java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>,Fn1<?,?>>>, Functor<Fn1<java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>,Fn1<Fn1<? super V,? extends K>,?>>, Profunctor<Fn1<? super V,? extends K>,Fn1<java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>,Fn1<?,?>>, Monad<Fn1<java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>,Fn1<Fn1<? super V,? extends K>,?>>, MonadReader<Fn1<? super V,? extends K>,Fn1<java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>,Fn1<Fn1<? super V,? extends K>,?>>, MonadRec<Fn1<java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>,Fn1<Fn1<? super V,? extends K>,?>>, MonadWriter<Fn1<? super V,? extends K>,Fn1<java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>,Fn1<Fn1<? super V,? extends K>,?>>
public final class GroupBy<K,V>
extends java.lang.Object
implements Fn2<Fn1<? super V,? extends K>,java.lang.Iterable<V>,java.util.Map<K,java.util.List<V>>>
Given an Iterable<V> vs and a key function V -> K f,
fold vs into a Map<K, List<V>> by applying f to each element of
vs, retaining values that map to the same key in a list, in the order they were iterated in.
- See Also:
InGroupsOf