Home / Programmazione / Java / Filtrare i valori null in uno Stream in Java
Mattepuffo

Filtrare i valori null in uno Stream in Java

Filtrare i valori null in uno Stream in Java

Gli Stream sono stati una delle più grandi aggiunte nelle ultime versioni di Java.

Hanno un sacco di metodi comodi, sono veloci, e diminuiscono il codice da scrivere.

Oggi vediamo come filtrare i valori null, senza andare ad utilizzare istruzioni condizionali.

Vi posterò anche due esempi leggermente diversi; in uno utlizzeremo la classe Objects.

In entrambi useremo il metodo filter di Stream.

Ecco il primo esempio:

public class StreamNull {

    public static void main(String[] args) {
        Stream stream = Stream.of("marco", "giulia", null, "gina", null);
        List list = stream.filter(x -> x != null).collect(Collectors.toList());
        list.forEach(System.out::println);
    }
}

Questo il secondo usando Objects:

public class StreamNull {

    public static void main(String[] args) {
        Stream stream = Stream.of("marco", "giulia", null, "gina", null);
        List list = stream.filter(Objects::nonNull).collect(Collectors.toList());
        list.forEach(System.out::println);
    }
}

Entrambi danno lo stesso risultato:

marco
giulia
gina

Enjoy!