Boa tarde, gostaria de saber como eu poderia fazer para adicionar elemento específicos em uma lista no java
Exemplo:
fiz uma arrayList do pacote java util, e um foreach procurando clientes em outra lista, eu gostaria de passar para essa nova lista que eu criei todas as informações que foram salvas com o código do cliente buscado
Essa sintaxe um pouco “estranha” é suportada pelo Java 8.
São chamadas expressões lambda.
Basicamente o que é feito é:
Percorra a lista original, filtrando de acordo com a seguinte condição (no caso, i == 1) e adicione (collect) em uma nova coleção (nova lista).
listaOriginal.stream().filter(i -> i == 1).collect(Collectors.toList());
ps: no exemplo, “listaOriginal” é uma lista de Integer. Sendo que “i” representa cada Integer da “listaOriginal”. No seu caso, como a lista é de clientes, você pode fazer com que “c”, por exemplo, represente cada cliente da sua lista original, e acessar o codigo de cada um (para testar a condição) através do getCodigo().
calma ai rs
como você disse a sintaxe é meio estranha e não entendi muito bem, no caso eu uso esse código dentro de um foreach?, mas mesmo assim não compreendi a lógica, como eu informo ele o que ele deve pegar dentro dessa lista? foi essa parte que ficou meio confuso pra mim, pois quero que ele busque em um lista de pedidos, todos os pedidos que foram feitos para um cliente
Exemplo:
cliente joão tem pedidos dentro de uma lista
quando eu digitar em um campo ó código do cliente joão, eu quero que ele puxe todos os pedidos que foram feitos para ele e que adicione esses pedidos em uma outra lista, uma lista que eu chamei de “novaLista”, e em cada pedido é cadastrado o código do cliente
Acho que agora ficou um pouco mais claro, se não entender muito bem eu tento dar uma resumida na minha ideia