@odiszapc В противном случае, мне был бы интересен минимальный пример, воспроизводящий, почему этот ответ не работает, если у вас есть время его создать, потому что я кое-что узнаю из него.

лиflatten метод в Гуаве - или простой способ конвертироватьIterable<Iterable<T>> чтобыIterable<T>?

у меня естьMultimap<K, V> [sourceMultimap] и я хочу вернуть все значения, где ключ соответствует некоторому предикату [keyPredicate]. Итак, на данный момент у меня есть:

Iterable<Collection<V>> vals = Maps.filterKeys(sourceMultimap.asMap(), keyPredicate).values();

Collection<V> retColl = ...;
for (Collection<V> vs : vals) retColl.addAll(vs);
return retColl;

Я просмотрел документы по Guava, но ничего не выпрыгнуло. Я просто проверяю, я ничего не пропустил. В противном случае, я извлеку свои три строки в короткий обобщенный общий метод и оставлю это так

Ответы на вопрос(2)

Ваш ответ на вопрос