From f1f741bb58e8b4279658fc35ef6d07b5d0aaa6b4 Mon Sep 17 00:00:00 2001 From: emptypoint <1215582715@qq.com> Date: Mon, 28 Nov 2022 08:54:26 +0000 Subject: [PATCH] Update hutool-core/src/main/java/cn/hutool/core/tree/BeanTree.java --- .../src/main/java/cn/hutool/core/tree/BeanTree.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/hutool-core/src/main/java/cn/hutool/core/tree/BeanTree.java b/hutool-core/src/main/java/cn/hutool/core/tree/BeanTree.java index e4e78a638..7c95b275b 100644 --- a/hutool-core/src/main/java/cn/hutool/core/tree/BeanTree.java +++ b/hutool-core/src/main/java/cn/hutool/core/tree/BeanTree.java @@ -120,10 +120,13 @@ public class BeanTree> { * @return 转换后的树 */ public List toTree(final List list) { - if (Objects.isNull(parentPredicate)) { - final Map> pIdValuesMap = EasyStream.of(list) - .peek(e -> Objects.requireNonNull(idGetter.apply(e), "The id of tree node must not be null") - )).group(pidGetter); + if (CollUtil.isEmpty(list)) { + return ListUtil.zero(); + } + if (Objects.isNull(parentPredicate)) { + final Map> pIdValuesMap = EasyStream.of(list) + .peek(e -> Objects.requireNonNull(idGetter.apply(e), "The id of tree node must not be null") + ).group(pidGetter); final List parents = pIdValuesMap.getOrDefault(pidValue, new ArrayList<>()); findChildren(list, pIdValuesMap); return parents;