@ NotNull public static < F , S , R > Stream < R > zip ( @ NotNull final Iterator < ? extends F > iterator1 , @ NotNull final Iterator < ? extends S > iterator2 , @ NotNull final BiFunction < ? super F , ? super S , ? extends R > combiner ) { Objects . requireNonNull ( iterator1 ) ; Objects . requireNonNull ( iterator2 ) ; return new Stream < R > ( new ObjZip < F , S , R > ( iterator1 , iterator2 , combiner ) ) ; }
Combines two iterators to a stream by applying specified combiner function to each element at same position .