Perguntas com a marcação «java-stream»

Use esta tag para perguntas relacionadas ao uso da API de Stream. Foi introduzido no Java 8 e suporta operações de estilo funcional em fluxos de valores, como pipelines de filtro-mapa-redução em coleções.

932
Lista do Java 8 <V> no mapa <K, V>

Eu quero traduzir uma lista de objetos em um mapa usando fluxos e lambdas do Java 8. É assim que eu escreveria em Java 7 e abaixo. private Map<String, Choice> nameMap(List<Choice> choices) { final Map<String, Choice> hashMap = new HashMap<>(); for (final Choice choice :...

504
Encontre o primeiro elemento por predicado

Acabei de começar a jogar com o Java 8 lambdas e estou tentando implementar algumas das coisas com as quais estou acostumado nas linguagens funcionais. Por exemplo, a maioria das linguagens funcionais possui algum tipo de função find que opera em seqüências ou listas que retornam o primeiro...

455
Java 8 Distinto por propriedade

No Java 8, como filtrar uma coleção usando o método Stream API, verificando a distinção de uma propriedade de cada objeto? Por exemplo, tenho uma lista de Personobjetos e desejo remover pessoas com o mesmo nome, persons.stream().distinct(); Usarei a verificação de igualdade padrão para um...

257
Ignorar duplicatas ao produzir mapa usando fluxos

Map<String, String> phoneBook = people.stream() .collect(toMap(Person::getName, Person::getAddress)); Recebo java.lang.IllegalStateException: Duplicate keyquando um elemento duplicado é encontrado. É possível ignorar essa exceção ao adicionar valores ao mapa? Quando houver duplicado, ele...

240
Usando o Java 8 opcional com Stream :: flatMap

A nova estrutura de fluxo do Java 8 e os amigos criam um código java muito conciso, mas me deparei com uma situação aparentemente simples que é difícil de fazer de forma concisa. Considere a List<Thing> thingse método Optional<Other> resolve(Thing thing). Quero mapear os Thingto...