элементарная ж вещь, но полезная
Dec. 25th, 2008 06:31 ampublic static <X, Y> Map<Y, Set<X>> groupBy(Set<X> xs, Set<Y> ys, Function<X, Y> f) { Map<Y, Set<X>> result = new HashMap<Y, Set<X>>(); for (Y y : ys) { result.put(y, new HashSet<X>()); } for (X x : xs) { result.get(f.apply(x)).add(x); } return result; }
меня немножко стремает что берём функцию а возвращаем мап, но...