From 738519d6db4561ca9b3532481dedb2cbb4ef0c53 Mon Sep 17 00:00:00 2001 From: Looly Date: Sun, 27 Nov 2022 16:04:17 +0800 Subject: [PATCH] fix test --- .../cn/hutool/core/collection/ListUtil.java | 20 +++++++++++++++++-- .../cn/hutool/core/stream/EasyStreamTest.java | 4 +++- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/hutool-core/src/main/java/cn/hutool/core/collection/ListUtil.java b/hutool-core/src/main/java/cn/hutool/core/collection/ListUtil.java index 83c0165a6..be30e38d3 100755 --- a/hutool-core/src/main/java/cn/hutool/core/collection/ListUtil.java +++ b/hutool-core/src/main/java/cn/hutool/core/collection/ListUtil.java @@ -320,19 +320,35 @@ public class ListUtil { } } + /** + * 针对List自然排序,排序会修改原List + * + * @param 元素类型 + * @param list 被排序的List + * @return 原list + * @see Collections#sort(List, Comparator) + */ + public static List sort(final List list) { + return sort(list, null); + } + /** * 针对List排序,排序会修改原List * * @param 元素类型 * @param list 被排序的List - * @param c {@link Comparator} + * @param c {@link Comparator},null表示自然排序(null安全的) * @return 原list * @see Collections#sort(List, Comparator) */ - public static List sort(final List list, final Comparator c) { + @SuppressWarnings("unchecked") + public static List sort(final List list, Comparator c) { if (CollUtil.isEmpty(list)) { return list; } + if(null == c){ + c = Comparator.nullsFirst((Comparator) Comparator.naturalOrder()); + } list.sort(c); return list; } diff --git a/hutool-core/src/test/java/cn/hutool/core/stream/EasyStreamTest.java b/hutool-core/src/test/java/cn/hutool/core/stream/EasyStreamTest.java index c5128e2f4..a891fc2f4 100644 --- a/hutool-core/src/test/java/cn/hutool/core/stream/EasyStreamTest.java +++ b/hutool-core/src/test/java/cn/hutool/core/stream/EasyStreamTest.java @@ -181,7 +181,9 @@ public class EasyStreamTest { final List distinctBy2 = EasyStream.of(list).parallel().distinct(String::valueOf).toList(); Assert.assertEquals(collect1, distinctBy1); - Assert.assertEquals(collect2, distinctBy2); + + // 并行流测试 + Assert.assertEquals(ListUtil.sort(collect2), ListUtil.sort(distinctBy2)); Assert.assertEquals( 4, EasyStream.of(1, 2, 2, null, 3, null).parallel(true).distinct(t -> Objects.isNull(t) ? null : t.toString()).sequential().count()