Junior — Middle
Qual é a sua experiência com o uso de fluxos de dados (streams) em Java e em que cenários os aplicou?
sobes.tech IA
Resposta da IA
Em Java, os flux de dados (Streams) são usados para um processamento conveniente e declarativo de coleções e outras fontes de dados.
Experiência de uso:
- Filtragem de coleções com base em critérios específicos (filter)
- Transformação de elementos (map)
- Ordenação (sorted)
- Agregação de dados (reduce, collect)
Por exemplo, num projeto, utilizei streams para processar uma lista de pedidos: filtrei por estado, transformei em DTO e compilei numa lista final para enviar ao frontend.
Exemplo:
List<OrderDTO> processedOrders = orders.stream()
.filter(order -> order.getStatus() == Status.COMPLETED)
.map(order -> new OrderDTO(order.getId(), order.getTotal()))
.collect(Collectors.toList());