Como filtrar valores nulos de um Stream usando o Java 8

Em Java 8 com Lambda, os valores nulos de um Stream podem ser removidos por filtragem nos valores que não são nulos.

Sintaxe:

stream.filter( a -> a != null )

Exemplo:

Este exemplo, primeiro cria um Stream com 2 valores nulos. O Stream é primeiro filtrado nos valores que não são nulos; em seguida, usando o método forEach , os valores restantes são gravados na saída. Você pode ver que a saída não possui nenhum valor nulo.

Crie o seguinte arquivo java:

import java.util.stream.Stream;

public class LambdaStreamFilterNull {

	public static void main(String[] argv){

		// Create an String with null values
		Stream<String> stream = Stream.of( "a", null, "c", null, "a", "b", "b");

		System.out.println( "Stream without null values:" );

		// Filter the stream
		stream.filter( a -> a != null )
			  .forEach( o -> System.out.println( o ) );
		
	}
}

O resultado será:

Stream without null values:
a
c
a
b
b

Referências:

Lambda Expressions

Comentários Recentes