Streams Api
allMatch
Trabalhando com allMatch
O método allMatch
é uma operação da Streams API do Java 8 que permite verificar se todos os elementos de uma stream satisfazem uma determinada condição especificada em uma função lambda.
Sintaxe
A sintaxe básica do allMatch
é simples. Ele aceita uma função como argumento, que retorna um valor booleano indicando se um elemento atende ao critério especificado.
List<Integer> numeros = Arrays.asList(1, 2, 3, 4, 5);
boolean todosPares = numeros.stream()
.allMatch(valor -> {
// Condição de correspondência
});
Exemplo
Vamos ver um exemplo prático de como usar o allMatch
:
List<Integer> numeros = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> numerosPares = Arrays.asList(2, 4, 6, 8);
boolean resultado1 = numeros.stream().allMatch(valor -> valor % 2 == 0);
System.out.println(resultado1); // false
boolean resultado2 = numerosPares.stream().allMatch(valor -> valor % 2 == 0);
System.out.println(resultado2); // true
Este código verifica se todos os elementos da lista numeros
são pares. Como há números ímpares na lista, o resultado será false
. No entanto, para a lista numerosPares
, como todos os elementos são pares, o resultado será true
.
Dicas
- O
allMatch
é útil para verificar se todos os elementos de uma coleção satisfazem uma condição específica. - A função lambda passada para o
allMatch
deve retornartrue
para todos os elementos que atendem ao critério especificado efalse
para aqueles que não atendem. - É importante notar que o
allMatch
interrompe a execução assim que encontra um elemento que não corresponde ao critério especificado. Portanto, pode ser mais eficiente para grandes coleções quando a correspondência falha cedo.