在Java 8的Streams中,我知道如何基于谓词对集合进行过滤,并处理谓词为true的项。我想知道的是,如果谓词将集合分成仅两组,是否可以通过API基于谓词进行过滤、处理过滤结果,然后立即链接到一个调用,以处理过滤器排除的所有元素?
例如,考虑以下列表:
List<Integer> intList = Arrays.asList(1,2,3,4);
能否做到以下事情:
intList.stream()
.filter(lessThanThree -> lessThanThree < 3)
.forEach(/* process */)
.exclusions(/* process exclusions */); //<-- obviously sudocode
或者我只需要对筛选出的项目执行forEach
过程,然后调用原始列表上的stream()
和filter()
来处理剩余的项目吗?谢谢!