groupBy<K> method
Groups elements by the value returned by keyOf.
Example:
['cat', 'car', 'dog'].groupBy((s) => s[0]);
// {'c': ['cat', 'car'], 'd': ['dog']}
Implementation
Map<K, List<T>> groupBy<K>(K Function(T element) keyOf) {
final map = <K, List<T>>{};
for (final element in this) {
final key = keyOf(element);
(map[key] ??= []).add(element);
}
return map;
}