reactor-core/src/main/java/reactor/core/publisher/Flux.java
public final <R, A> Mono<R> collect(Collector<? super T, A, ? extends R> collector) {
		return Mono.onAssembly(new MonoStreamCollector<>(this, collector));
	}
public final <R, A> Mono<R> collect(Collector<? super T, A, ? extends R> collector) {
		return Mono.onAssembly(new MonoStreamCollector<>(this, collector));
	}
public final < R , A > Mono < R > collect ( Collector < ? super T , A , ? extends R > collector ) { return Mono . onAssembly ( new MonoStreamCollector <> ( this , collector ) ) ; }
Collect all elements emitted by this {@link Flux} into a container,
by applying a Java 8 Stream API {@link Collector}
The collected result will be emitted when this sequence completes.

<p>
<img class="marble" src="doc-files/marbles/collectWithCollector.svg" alt="">

@param collector the {@link Collector}
@param <A> The mutable accumulation type
@param <R> the container type

@return a {@link Mono} of the collected container on complete
Collect all elements emitted by this { @link Flux } into a container by applying a Java 8 Stream API { @link Collector } The collected result will be emitted when this sequence completes .