This commit is contained in:
Looly 2022-01-08 18:54:55 +08:00 committed by lsx0310
parent fd021c5f9c
commit 94a57408e9
3 changed files with 18 additions and 3 deletions

View File

@ -6,8 +6,11 @@
# 5.7.20 (2022-01-08)
### 🐣新特性
* 【core 】 增加对null值友好的groupingBy操作的Collector实现可指定map类型pr#498@Gitee
*
### 🐞Bug修复
* 【core 】 修复setter重载导致匹配错误issue#2082@Github
* 【core 】 修复RegexPool汉字匹配范围小问题pr#2081@Github
-------------------------------------------------------------------------------------------------------------
# 5.7.19 (2022-01-07)

View File

@ -6,7 +6,14 @@ import cn.hutool.core.map.MapUtil;
import cn.hutool.core.stream.CollectorUtil;
import cn.hutool.core.stream.StreamUtil;
import java.util.*;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
import java.util.function.BiFunction;
import java.util.function.Function;
import java.util.stream.Collector;

View File

@ -1,8 +1,13 @@
package cn.hutool.core.stream;
import cn.hutool.core.lang.Opt;
import cn.hutool.core.util.StrUtil;
import java.util.*;
import java.util.Collections;
import java.util.EnumSet;
import java.util.HashMap;
import java.util.Map;
import java.util.StringJoiner;
import java.util.function.BiConsumer;
import java.util.function.BinaryOperator;
import java.util.function.Function;
@ -84,7 +89,7 @@ public class CollectorUtil {
Supplier<A> downstreamSupplier = downstream.supplier();
BiConsumer<A, ? super T> downstreamAccumulator = downstream.accumulator();
BiConsumer<Map<K, A>, T> accumulator = (m, t) -> {
K key = Optional.ofNullable(t).map(classifier).orElse(null);
K key = Opt.ofNullable(t).map(classifier).orElse(null);
A container = m.computeIfAbsent(key, k -> downstreamSupplier.get());
downstreamAccumulator.accept(container, t);
};