问题描述
一个集合中有两种数据,想通过一次stream 流 实现数据隔离,然后分别得到两种数据的集合
ArrayList<Integer> integers = CollectionUtil.newArrayList(-1, -2, -3, 0, 1, 23, 4);
Collector<Integer, ?, Map<Boolean, List<Integer>>> objectMapCollector = Collectors.partitioningBy(o -> o > 0);
Map<Boolean, List<Integer>> collect = integers.stream().collect(objectMapCollector);
System.out.println(JSONUtil.toJsonPrettyStr(collect));
总结:
java8的stream流真心强大,突然发现用了这么久,还是没用明白,继续~~