Buscando por elemento e executando código caso seja encontrado

De Basef
Revisão de 16h17min de 9 de julho de 2017 por Admin (discussão | contribs) (Criou página com ' Dado: <source lang="java"> class Carro { private String nome; private int quantidade; public Curso(String nome, int quantidade) { this.nome = nome;...')

(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para: navegação, pesquisa

Dado:

class Carro {
    private String nome;
    private int quantidade;
 
    public Curso(String nome, int quantidade) {
        this.nome = nome;
        this.quantidade = quantidade;
    }
 
    public String getNome() {
        return nome;
    }
 
    public int getQuantidade() {
        return quantidade;
    }
}

E:

List<Carro> carros = new ArrayList<Carro>();
carros.add(new Carro("Ferrari", 45));
carros.add(new Carro("McLaren", 150));
carros.add(new Carro("Red Bull 8", 113));
carros.add(new Carro("Williams", 55));

Iremos filtrar por carros com quantidade maior que 100, pegar qualquer um dos resultados e, caso este resultado seja encontrado, iremos exibir o seu nome.

Caso não seja encontrado, não exibe nada.

carros.stream()
    .filter(c -> c.getQuantidade() > 100)
    .findAny()
    .ifPresent(c -> System.out.println(c.getNome()));