Package com.google.common.collect
Class MoreCollectors
- java.lang.Object
-
- com.google.common.collect.MoreCollectors
-
@GwtCompatible @Beta public final class MoreCollectors extends java.lang.Object
Collectors not present injava.util.stream.Collectors
that are not otherwise associated with acom.google.common
type.- Since:
- 33.2.0 (available since 21.0 in guava-jre)
- Author:
- Louis Wasserman
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <T extends @Nullable java.lang.Object>
java.util.stream.Collector<T,?,T>onlyElement()
A collector that takes a stream containing exactly one element and returns that element.static <T> java.util.stream.Collector<T,?,java.util.Optional<T>>
toOptional()
A collector that converts a stream of zero or one elements to anOptional
.
-
-
-
Method Detail
-
toOptional
public static <T> java.util.stream.Collector<T,?,java.util.Optional<T>> toOptional()
A collector that converts a stream of zero or one elements to anOptional
.- Returns:
Optional.of(onlyElement)
if the stream has exactly one element (must not benull
) and returnsOptional.empty()
if it has none.- Throws:
java.lang.IllegalArgumentException
- if the stream consists of two or more elements.java.lang.NullPointerException
- if any element in the stream isnull
.
-
onlyElement
public static <T extends @Nullable java.lang.Object> java.util.stream.Collector<T,?,T> onlyElement()
A collector that takes a stream containing exactly one element and returns that element. The returned collector throws anIllegalArgumentException
if the stream consists of two or more elements, and aNoSuchElementException
if the stream is empty.
-
-