programming:java:java8
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| programming:java:java8 [2023/10/31 12:36] – skipidar | programming:java:java8 [2023/11/01 07:31] (current) – ↷ Page moved from camunda:programming:java:java8 to programming:java:java8 skipidar | ||
|---|---|---|---|
| Line 378: | Line 378: | ||
| | reducing | The type produced by the reduction operation | | reducing | The type produced by the reduction operation | ||
| | collectingAndThen | | collectingAndThen | ||
| - | | groupingBy | Map<K, List< | + | | groupingBy | Map<K, List< |
| | partitioningBy | Map< | | partitioningBy | Map< | ||
| Line 985: | Line 985: | ||
| LongPredicate l = longValue -> longValue < 0l; // boolean function | LongPredicate l = longValue -> longValue < 0l; // boolean function | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Terminal Methods ===== | ||
| + | |||
| + | == findAny / findFirst == | ||
| + | |||
| + | <sxh java> | ||
| + | |||
| + | List< | ||
| + | |||
| + | // gives maybe 7, 8 or 9, cause findAny doesnt respect order | ||
| + | int res = list | ||
| + | .stream() | ||
| + | .parallel() | ||
| + | .filter(integer -> integer > 6) | ||
| + | .findAny() | ||
| + | .orElseThrow(); | ||
| + | | ||
| + | assertThat(res, | ||
| + | |||
| + | |||
| + | |||
| + | // gives 9, cause its the first in the row match to filter | ||
| + | int res2 = list | ||
| + | .stream() | ||
| + | .parallel() | ||
| + | .filter(integer -> integer > 6) | ||
| + | .findFirst() | ||
| + | .orElseThrow(); | ||
| + | |||
| + | assertThat(res, | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | == reduce == | ||
| + | |||
| + | <sxh java> | ||
| + | // cruel method to concat numbers, just to demonstrate reduce | ||
| + | List< | ||
| + | Integer res = list | ||
| + | .stream() | ||
| + | .mapToInt(value -> value) | ||
| + | .reduce(0, | ||
| + | (integer, integer2) -> { | ||
| + | return Integer.parseInt(String.format(" | ||
| + | } | ||
| + | ); | ||
| + | System.out.println(res); | ||
| + | // better way would be with java8 | ||
| + | String res2 = list | ||
| + | .stream() | ||
| + | .map(String:: | ||
| + | .collect(Collectors.joining()); | ||
| + | System.out.println(res2); | ||
| </ | </ | ||
programming/java/java8.1698755802.txt.gz · Last modified: by skipidar
