У меня есть Item
класс:
public class Item {
String name;
double price;
// Getters & Setters
}
Теперь у меня есть карта как Map<String, List<Item>> map;
, эта карта содержит название элемента и соответствующий список элементов с таким же именем.
Теперь я хочу узнать весь список элементов, соответствующих критерию фильтра.
Вот мой фильтр List<String> filter
, в основном он содержит весь список имен, которые мне нужно отфильтровать по карте, и получить всевыбранные элементы в качестве окончательного списка.
List<Item> output = new ArrayList<>();
filter.forEach(item -> {
List<Item> list = map.get(item);
if (list != null) {
output .addAll(list);
}
});
Здесь я использую лямбда-выражение, теперь есть ли способ еще больше упростить этот код, используя Lamda или ссылку на метод?