Учитывая следующий метод с вложенным циклом for
:
private Set<PlanningItem> getPlanningItems(Set<JsonNode> nodes) {
Set<PlanningItem> planningItems = new HashSet<>();
for (JsonNode node : nodes) {
for (JsonNode planningItem : node.findPath(PLANNING_ITEMS.getValue())) {
planningItems.add(new PlanningItem(planningItem));
}
}
return planningItems;
}
Я преобразовал его во вложенный forEach
метод, например, так:
private Set<PlanningItem> getPlanningItems(Set<JsonNode> nodes) {
Set<PlanningItem> planningItems = new HashSet<>();
nodes.forEach(node -> node.findPath(PLANNING_ITEMS.getValue()).forEach(planningItem -> planningItems.add(new PlanningItem(planningItem))));
return planningItems;
}
Мне любопытно, можно ли это сделать с помощью вложенных потоков или даже если это оптимально, учитывая эту простую структуру и тот факт, что мы работаем с коллекцией JsonNode
без встроенного метода потоков.