static <T extends Comparable<? super T>> VecFactory<T[]> ofObjectVec(
		final ElementDistance<T[]> distance,
		final List<Optimize> optimizes
	) {
		return ofObjectVec(
			Comparator.naturalOrder(),
			distance,
			optimizes
		);
	}
Create a new factory for {@code T[]} vectors with comparable element
types. Additionally, you can specify the optimization direction
(maximization or minimization) for each dimension. The dimensionality of
the created vectors must be exactly the same as the given length of the
given {@code optimizes}. If the lengths don't match, an
{@link IllegalArgumentException} is thrown.

@since 6.0

@see #ofObjectVec(Comparator, ElementDistance, List)

@param distance the element distance function
@param optimizes the optimization <em>direction</em> for each dimension
@param <T> the array element type
@return a new factory for {@code T[]} vectors
@throws NullPointerException if one of the arguments is {@code null}
@throws IllegalArgumentException if the {@code optimizes} length is zero
jenetics.ext/src/main/java/io/jenetics/ext/moea/VecFactory.java