Нужна помощь в фильтрации ImmutableTable гуавы с помощью параллельного потока и коллекторагуавы с помощью Java 8 параллельного потока
Неизменное tofilterTable;
Usecase: Iterate to toFilter и удалить элементы, которые не присутствуют, или значение входа не является ложным в таблице validEntry. Традиция способ сделать это через цикл:
ImmutableTable<MarketplaceArc, String, ObjectB> filterInactive(final ImmutableTable<MarketplaceArc, String, ObjectB> toFilter) {
final ImmutableTable.Builder filteredResultBuilder =
ImmutableTable.builder();
final Map<MarketplaceArc, Map<String, ObjectB>> rowMap =
browseMappings.rowMap();
for (final Map.Entry<MarketplaceArc, Map<String, ObjectB>>
rowMapEntry : rowMap.entrySet()) {
for (final Map.Entry<String, ObjectB> entry :
rowMapEntry.getValue().entrySet()) {
if(ifActive(rowMap.getKey, entry)){
filteredResultBuilder.put(
rowMapEntry.getKey(),
entry.getKey(),
buildObjectB(entry));
}
}
}
return filteredResultBuilder.build();
}
Есть лучше и лаконичный способ сделать это с помощью Java parallelStreams?
Fix вашему вопросу ... Ваши примеры выглядят как они даже не прошли через компиляцию ('Immutable' не является тип гуавы,' ImmutableTable' yes; 'ImmutableTable' не принимает имена полей *, но типы объектов). Мы не работаем с псевдокодом, а с реальным кодом. Поэтому, пожалуйста, создайте [MCVE] (http://stackoverflow.com/help/mcve) с тем, что у вас есть, и точно скажите нам, чего вы ожидаете, чтобы мы могли вам помочь. –
Исправлено. Я искал некоторые указатели. – sidss