diff --git a/hutool-core/src/main/java/cn/hutool/core/stream/CollectorUtil.java b/hutool-core/src/main/java/cn/hutool/core/stream/CollectorUtil.java index 1dcc72096..ecbfab5a7 100644 --- a/hutool-core/src/main/java/cn/hutool/core/stream/CollectorUtil.java +++ b/hutool-core/src/main/java/cn/hutool/core/stream/CollectorUtil.java @@ -277,7 +277,7 @@ public class CollectorUtil { * @since 6.0.0 */ public static Collector, EntryStream> toEntryStream( - Function keyMapper) { + final Function keyMapper) { return toEntryStream(keyMapper, Function.identity()); } diff --git a/hutool-core/src/main/java/cn/hutool/core/stream/EntryStream.java b/hutool-core/src/main/java/cn/hutool/core/stream/EntryStream.java index dff2c8801..f712f40fd 100644 --- a/hutool-core/src/main/java/cn/hutool/core/stream/EntryStream.java +++ b/hutool-core/src/main/java/cn/hutool/core/stream/EntryStream.java @@ -38,7 +38,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream 值类型 * @param keys 键集合 * @param values 值集合 - * @return {@link EntryStream}实例 + * @return {@code EntryStream}实例 */ public static EntryStream merge(final Iterable keys, final Iterable values) { final boolean hasKeys = ObjUtil.isNotNull(keys); @@ -75,7 +75,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream 键类型 * @param 值类型 - * @return {@link EntryStream}实例 + * @return {@code EntryStream}实例 */ public static EntryStream of(final Map map) { return ObjUtil.isNull(map) ? @@ -90,7 +90,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream 键类型 * @param 值类型 - * @return {@link EntryStream}实例 + * @return {@code EntryStream}实例 */ public static EntryStream of(final Iterable> entries) { return ObjUtil.isNull(entries) ? @@ -106,10 +106,10 @@ public class EntryStream extends AbstractEnhancedWrappedStream 元素类型 * @param 键类型 * @param 值类型 - * @return {@link EntryStream}实例 + * @return {@code EntryStream}实例 */ public static EntryStream of( - final Iterable source, Function keyMapper, Function valueMapper) { + final Iterable source, final Function keyMapper, final Function valueMapper) { Objects.requireNonNull(keyMapper); Objects.requireNonNull(valueMapper); if (ObjUtil.isNull(source)) { @@ -127,9 +127,9 @@ public class EntryStream extends AbstractEnhancedWrappedStream 键类型 * @param 值类型 - * @return {@link EntryStream}实例 + * @return {@code EntryStream}实例 */ - public static EntryStream of(Stream> stream) { + public static EntryStream of(final Stream> stream) { return ObjUtil.isNull(stream) ? empty() : new EntryStream<>(stream.map(EntryStream::ofEntry)); } @@ -139,7 +139,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream 键类型 * @param 值类型 - * @return {@link EntryStream}实例 + * @return {@code EntryStream}实例 */ public static EntryStream empty() { return new EntryStream<>(Stream.empty()); @@ -157,7 +157,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream distinctByKey() { // FIXME fix happen NPE when has null key @@ -175,7 +175,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream distinctByValue() { // FIXME fix happen NPE when has null value @@ -194,7 +194,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream filter(final BiPredicate filter) { Objects.requireNonNull(filter); @@ -205,7 +205,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream filterByKey(final Predicate filter) { Objects.requireNonNull(filter); @@ -216,7 +216,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream filterByValue(final Predicate filter) { Objects.requireNonNull(filter); @@ -226,7 +226,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream nonNullKeyValue() { return super.filter(e -> ObjUtil.isNotNull(e) && ObjUtil.isNotNull(e.getKey()) && ObjUtil.isNotNull(e.getValue())); @@ -235,7 +235,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream nonNullKey() { return super.filter(e -> ObjUtil.isNotNull(e) && ObjUtil.isNotNull(e.getKey())); @@ -244,7 +244,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream nonNullValue() { return super.filter(e -> ObjUtil.isNotNull(e) && ObjUtil.isNotNull(e.getValue())); @@ -254,7 +254,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream peekKey(final Consumer consumer) { Objects.requireNonNull(consumer); @@ -265,7 +265,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream peekValue(final Consumer consumer) { Objects.requireNonNull(consumer); @@ -276,7 +276,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream sortByKey(final Comparator comparator) { Objects.requireNonNull(comparator); @@ -287,7 +287,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream sortByValue(final Comparator comparator) { Objects.requireNonNull(comparator); @@ -301,7 +301,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream push(final K key, final V value) { return wrap(Stream.concat(stream, Stream.of(ofEntry(key, value)))); @@ -312,7 +312,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream unshift(final K key, final V value) { return wrap(Stream.concat(Stream.of(ofEntry(key, value)), stream)); @@ -322,7 +322,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream append(final Iterable> entries) { @@ -338,7 +338,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream prepend(final Iterable> entries) { @@ -373,7 +373,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream 新的键类型 - * @return {@link EntryStream}实例 + * @return {@code EntryStream}实例 */ public EntryStream mapKeys(final Function mapper) { Objects.requireNonNull(mapper); @@ -387,7 +387,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream 新的值类型 - * @return {@link EntryStream}实例 + * @return {@code EntryStream}实例 */ public EntryStream mapValues(final Function mapper) { Objects.requireNonNull(mapper); @@ -442,7 +442,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream将原有流的键执行mapper操作映射为流,流中的所有所有元素仍然对应原本的值, - * 然后再返回由这些流中所有元素组成的流新{@link EntryStream}串行流。
+ * 然后再返回由这些流中所有元素组成的流新{@code EntryStream}串行流。
* 效果类似: *
{@code
 	 * // unwrap = [{a = 1}, {b = 2}, {c = 3}]
@@ -466,7 +466,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream将原有流的值执行mapper操作映射为流,流中的所有所有元素仍然对应原本的键,
-	 * 然后再返回由这些流中所有元素组成的流新{@link EntryStream}串行流。
+ * 然后再返回由这些流中所有元素组成的流新{@code EntryStream}串行流。
* 效果类似: *
{@code
 	 * // unwrap = [{a = 1}, {b = 2}, {c = 3}]
@@ -664,7 +664,7 @@ public class EntryStream extends AbstractEnhancedWrappedStream inverse() {
 		return new EntryStream<>(
@@ -760,7 +760,9 @@ public class EntryStream extends AbstractEnhancedWrappedStream BinaryOperator throwingMerger() {
-		return (u, v) -> {throw new IllegalStateException(String.format("Duplicate key %s", u));};
+		return (u, v) -> {
+			throw new IllegalStateException(String.format("Duplicate key %s", u));
+		};
 	}
 
 }
diff --git a/hutool-core/src/main/java/cn/hutool/core/stream/TransformableWrappedStream.java b/hutool-core/src/main/java/cn/hutool/core/stream/TransformableWrappedStream.java
index d209d63dc..3272b9bd0 100644
--- a/hutool-core/src/main/java/cn/hutool/core/stream/TransformableWrappedStream.java
+++ b/hutool-core/src/main/java/cn/hutool/core/stream/TransformableWrappedStream.java
@@ -51,8 +51,8 @@ public interface TransformableWrappedStream other,
 			final BiFunction zipper) {
 		Objects.requireNonNull(zipper);
-		Map idxIdentityMap = mapIdx((e, idx) -> MapUtil.entry(idx, e)).collect(CollectorUtil.entryToMap());
-		Map idxOtherMap = EasyStream.of(other).mapIdx((e, idx) -> MapUtil.entry(idx, e)).collect(CollectorUtil.entryToMap());
+		final Map idxIdentityMap = mapIdx((e, idx) -> MapUtil.entry(idx, e)).collect(CollectorUtil.entryToMap());
+		final Map idxOtherMap = EasyStream.of(other).mapIdx((e, idx) -> MapUtil.entry(idx, e)).collect(CollectorUtil.entryToMap());
 		if (idxIdentityMap.size() <= idxOtherMap.size()) {
 			return EasyStream.of(idxIdentityMap.keySet(), isParallel()).map(k -> zipper.apply(idxIdentityMap.get(k), idxOtherMap.get(k)));
 		}
diff --git a/hutool-core/src/main/java/cn/hutool/core/stream/package-info.java b/hutool-core/src/main/java/cn/hutool/core/stream/package-info.java
index 155cf24db..dadfa3d59 100644
--- a/hutool-core/src/main/java/cn/hutool/core/stream/package-info.java
+++ b/hutool-core/src/main/java/cn/hutool/core/stream/package-info.java
@@ -1,7 +1,6 @@
 /**
  * Java8的stream相关封装
  *
- * @author looly
- *
+ * @author Looly, VampireAchao, huangchengxing, emptypoint
  */
 package cn.hutool.core.stream;
diff --git a/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/DropWhileSpliterator.java b/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/DropWhileSpliterator.java
index 4bb620670..da50ee216 100644
--- a/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/DropWhileSpliterator.java
+++ b/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/DropWhileSpliterator.java
@@ -14,7 +14,7 @@ import java.util.function.Predicate;
  */
 public class DropWhileSpliterator implements Spliterator {
 
-	public static  DropWhileSpliterator create(Spliterator source, Predicate predicate) {
+	public static  DropWhileSpliterator create(final Spliterator source, final Predicate predicate) {
 		return new DropWhileSpliterator<>(source, predicate);
 	}
 
@@ -22,13 +22,13 @@ public class DropWhileSpliterator implements Spliterator {
 	private final Predicate predicate;
 	private boolean isFound = false;
 
-	private DropWhileSpliterator(Spliterator source, Predicate predicate) {
+	private DropWhileSpliterator(final Spliterator source, final Predicate predicate) {
 		this.source = source;
 		this.predicate = predicate;
 	}
 
 	@Override
-	public boolean tryAdvance(Consumer action) {
+	public boolean tryAdvance(final Consumer action) {
 		boolean hasNext = true;
 		// 如果 还没找到 并且 流中还有元素 继续找
 		while (!isFound && hasNext) {
diff --git a/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/IterateSpliterator.java b/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/IterateSpliterator.java
index edf2170f5..9a2d37642 100644
--- a/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/IterateSpliterator.java
+++ b/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/IterateSpliterator.java
@@ -25,24 +25,24 @@ public class IterateSpliterator extends Spliterators.AbstractSpliterator {
 	 * Creates a spliterator reporting the given estimated size and
 	 * additionalCharacteristics.
 	 */
-	IterateSpliterator(T seed, Predicate hasNext, UnaryOperator next) {
+	IterateSpliterator(final T seed, final Predicate hasNext, final UnaryOperator next) {
 		super(Long.MAX_VALUE, Spliterator.ORDERED | Spliterator.IMMUTABLE);
 		this.seed = seed;
 		this.hasNext = hasNext;
 		this.next = next;
 	}
 
-	public static  IterateSpliterator create(T seed, Predicate hasNext, UnaryOperator next) {
+	public static  IterateSpliterator create(final T seed, final Predicate hasNext, final UnaryOperator next) {
 		return new IterateSpliterator<>(seed, hasNext, next);
 	}
 
 	@Override
-	public boolean tryAdvance(Consumer action) {
+	public boolean tryAdvance(final Consumer action) {
 		Objects.requireNonNull(action);
 		if (finished) {
 			return false;
 		}
-		T t;
+		final T t;
 		if (started) {
 			t = next.apply(prev);
 		} else {
@@ -60,7 +60,7 @@ public class IterateSpliterator extends Spliterators.AbstractSpliterator {
 	}
 
 	@Override
-	public void forEachRemaining(Consumer action) {
+	public void forEachRemaining(final Consumer action) {
 		Objects.requireNonNull(action);
 		if (finished) {
 			return;
diff --git a/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/TakeWhileSpliterator.java b/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/TakeWhileSpliterator.java
index 318e33351..3313cd285 100644
--- a/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/TakeWhileSpliterator.java
+++ b/hutool-core/src/main/java/cn/hutool/core/stream/spliterators/TakeWhileSpliterator.java
@@ -14,7 +14,7 @@ import java.util.function.Predicate;
  */
 public class TakeWhileSpliterator implements Spliterator {
 
-	public static  TakeWhileSpliterator create(Spliterator source, Predicate predicate) {
+	public static  TakeWhileSpliterator create(final Spliterator source, final Predicate predicate) {
 		return new TakeWhileSpliterator<>(source, predicate);
 	}
 
@@ -22,13 +22,13 @@ public class TakeWhileSpliterator implements Spliterator {
 	private final Predicate predicate;
 	private boolean isContinue = true;
 
-	TakeWhileSpliterator(Spliterator source, Predicate predicate) {
+	TakeWhileSpliterator(final Spliterator source, final Predicate predicate) {
 		this.source = source;
 		this.predicate = predicate;
 	}
 
 	@Override
-	public boolean tryAdvance(Consumer action) {
+	public boolean tryAdvance(final Consumer action) {
 		boolean hasNext = true;
 		// 如果 还可以继续 并且 流中还有元素 则继续遍历
 		while (isContinue && hasNext) {