Entendendo a diferença entre Stream allMatch(), anyMatch() e noneMatch() do Java 8
Stream tem facilitado muito a vida dos desenvolvedores Java e neste post vou mostrar a diferença entre Stream.allMatch(), Stream.anyMatch() e Stream.noneMatch() do Java 8
Última atualização em: | 10093 Visualizações
Neste post vou elencar as principais diferenças entre Stream.allMatch(), Stream.anyMatch() e Stream.noneMatch() que podem ser utilizados a partir do Java 8.
Stream.allMatch()
Retorna true
se todos os elementos do fluxo correspondem ao predicado fornecido. Pode não avaliar o predicado em todos os elementos se não for necessário para determinar o resultado. Exemplo:
List<Integer> ls = Arrays.asList(2, 3, 4, 5, 6, 7);
boolean result = ls.stream().allMatch(n -> n % 2 == 0);
System.out.println(result);
Será impresso:
false
Para saber mais acesse: Java 8 Stream allMatch() com exemplos
Stream.anyMatch()
Retorna true
se qualquer um dos elementos do fluxo corresponde ao predicado fornecido. Pode não avaliar o predicado em todos os elementos se não for necessário para determinar o resultado.
Note que se o fluxo estiver vazio, será retornado
false
.
Exemplo:
List<Integer> ls = Arrays.asList(2, 3, 4, 5, 6, 7);
boolean result = ls.stream().anyMatch(n -> n % 2 == 0);
System.out.println(result);
Será impresso:
true
Para saber mais acesse: Java 8 Stream anyMatch() com exemplos
Stream.noneMatch()
Retorna true
se nenhum dos elementos do fluxo corresponde ao predicado fornecido.
Exemplo:
List<Integer> ls = Arrays.asList(2, 3, 4, 5, 6, 7);
boolean result = ls.stream().noneMatch(n -> n % 11 == 0);
System.out.println(result);
Será impresso:
true
Para saber mais acesse: Java 8 Stream noneMatch() com exemplos
Não esqueca de deixar suas dúvidas nos comentários e compartilhar este post.