待小人宜宽,防小人宜严。——金瑛
问题的issue
:
https://github.com/dromara/hutool/issues/3380
此处复现:
1 | List<Map<String, String>> data = ListUtil.toList( |
原因是在reducing
的第三个参数里出现重复引用导致问题
解决办法:每次都调用第一个参数的supplier
创建新map
将原来的:
1 | public static <K, V, R extends Map<K, List<V>>> Collector<Map<K, V>, ?, R> reduceListMap(final Supplier<R> mapSupplier) { |
改为:
1 | public static <K, V, R extends Map<K, List<V>>> Collector<Map<K, V>, ?, R> reduceListMap(final Supplier<R> mapSupplier) { |
即可解决