diff --git a/src/share/classes/java/util/Spliterator.java b/src/share/classes/java/util/Spliterator.java
index 588b8176d4741c0973a7ac8bf040b973cbc0b156..0b41f9f0a8f07d2a7445f6d358a6917d6cf89408 100644
--- a/src/share/classes/java/util/Spliterator.java
+++ b/src/share/classes/java/util/Spliterator.java
@@ -140,32 +140,32 @@ import java.util.function.LongConsumer;
* (in approximate order of decreasing desirability):
*
* - The source cannot be structurally interfered with.
- * For example, an instance of
+ *
For example, an instance of
* {@link java.util.concurrent.CopyOnWriteArrayList} is an immutable source.
* A Spliterator created from the source reports a characteristic of
* {@code IMMUTABLE}.
* - The source manages concurrent modifications.
- * For example, a key set of a {@link java.util.concurrent.ConcurrentHashMap}
+ *
For example, a key set of a {@link java.util.concurrent.ConcurrentHashMap}
* is a concurrent source. A Spliterator created from the source reports a
* characteristic of {@code CONCURRENT}.
* - The mutable source provides a late-binding and fail-fast Spliterator.
- * Late binding narrows the window during which interference can affect
+ *
Late binding narrows the window during which interference can affect
* the calculation; fail-fast detects, on a best-effort basis, that structural
* interference has occurred after traversal has commenced and throws
* {@link ConcurrentModificationException}. For example, {@link ArrayList},
* and many other non-concurrent {@code Collection} classes in the JDK, provide
* a late-binding, fail-fast spliterator.
* - The mutable source provides a non-late-binding but fail-fast Spliterator.
- * The source increases the likelihood of throwing
+ *
The source increases the likelihood of throwing
* {@code ConcurrentModificationException} since the window of potential
* interference is larger.
* - The mutable source provides a late-binding and non-fail-fast Spliterator.
- * The source risks arbitrary, non-deterministic behavior after traversal
+ *
The source risks arbitrary, non-deterministic behavior after traversal
* has commenced since interference is not detected.
*
* - The mutable source provides a non-late-binding and non-fail-fast
* Spliterator.
- * The source increases the risk of arbitrary, non-deterministic behavior
+ *
The source increases the risk of arbitrary, non-deterministic behavior
* since non-detected interference may occur after construction.
*
*
@@ -284,6 +284,8 @@ import java.util.function.LongConsumer;
* is set to {@code true} then diagnostic warnings are reported if boxing of
* primitive values occur when operating on primitive subtype specializations.
*
+ * @param the type of elements returned by this Spliterator
+ *
* @see Collection
* @since 1.8
*/
@@ -333,9 +335,8 @@ public interface Spliterator {
* Upon non-null return:
*
* - the value reported for {@code estimateSize()} before splitting,
- * if not already zero or {@code Long.MAX_VALUE}, must, after splitting, be
- * greater than {@code estimateSize()} for this and the returned
- * Spliterator; and
+ * must, after splitting, be greater than or equal to {@code estimateSize()}
+ * for this and the returned Spliterator; and
* - if this Spliterator is {@code SUBSIZED}, then {@code estimateSize()}
* for this spliterator before splitting must be equal to the sum of
* {@code estimateSize()} for this and the returned Spliterator after