code: public static <T, V> String interpose(T[] values, V separator) {
          return new InterposeStrings<T, V>().apply(new ArrayIterator<>(values), new ConstantIterator<>(separator));
      }
docs: Creates a string by interposing stringified values from the source array with the separator. E.g:
  <code>interpose([1,2,3], "-") -> "1-2-3"</code>
  
  @param <T> the iterable element type
  @param <V> the separator type
  @param values the source array
  @param separator the separator
  @return the resulting string