Quando si utilizza un flusso Java, a volte possono verificarsi valori null dopo la mappatura. Attualmente quando questi valori devono essere omessi, io uso:Filtrare articoli Null in Stream
.stream()
.<other operations...>
.filter(element -> element != null)
.<other operations...>
Per uno stile più funzionale un metodo di supporto piccola è presto scritto:
public static <T> boolean nonNull(T entity) {
return entity != null;
}
In modo che è possibile utilizzare un riferimento invece il metodo:
.stream()
.<other operations...>
.filter(Elements::nonNull)
.<other operations...>
Non riuscivo a trovare un tale metodo jdk, anche se sospetto che ne abbiano incluso uno. C'è un approccio diverso qui? O hanno omesso questo per una ragione?
Cosa c'è di sbagliato con 'e -> e = null'!? – immibis
Nulla di per sé, ma preferisco un riferimento al metodo quando questa situazione si verifica in una pipeline utilizzando solo riferimenti al metodo. Sembrava un combo breaker. –
Correlato: [C'è qualche differenza tra Oggetti :: non Null e x -> x! = Null?] (Https://stackoverflow.com/questions/25435056/is-there-any-difference-between-objectsnonnull-and- xx-null) –