public <T> T next(T... values) {
    List<T> list = requireNonNulls(requireNonEmpty(asList(values)));
    return requireNonEmpty(list).get(nextInt(0, list.size() - 1));
  }
Returns the next pseudorandom, uniformly distributed element from the specified values as
indexed by this random number generator's sequence.

@param <T> the type of the elements
@param values the range of values (inclusive) for the pseudorandom.
@return the next pseudorandom, uniformly distributed element from the specified values as
        indexed by this random number generator's sequence.
@throws NullPointerException if values is null.
@throws IllegalArgumentException if values is empty.
geode-junit/src/main/java/org/apache/geode/test/junit/rules/RandomRule.java