Wenn Sie schauen, um die ursprünglichen Werte für die Einzelteile zu erhalten, die tun nicht Filter entsprechen, verwenden map
mit ternären Logik:
- Artikel, die Filter nicht passieren, werden zurückgegeben, wie sie ist
- Elemente, die den Filter passieren lassen
verwandelt
Hier ein Beispiel:
Stream<String> stream = Arrays.stream(
new String[]{"quick", null, "brown", "fox", null, "jumps"}
);
List<String> res = stream
.map(s -> s != null ? s : "<EMPTY>")
.collect(Collectors.toList());
for (String s : res) {
System.out.println(s);
}
Filterungslogik wird in dem bedingten Ausdruck in map
eingebettet:
s -> s != null ? s : "<EMPTY>" // Using default values for null strings
Demo.
Mit einer einfachen Schleife? –
http://stackoverflow.com/q/42029357/2711488 – Holger