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

Wolmir Cezer Garbin por Wolmir Cezer Garbin - - Java - DICA

Ú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.


Apoiadores

Publique seu post no Receitas de Código

Aguarde, estamos trabalhando para que você possa publicar sua postagem no Receitas de Código!