@Override
    public boolean tryAdvance(Consumer<? super T> action) {
        requireNonNull(action);
        if (index >= 0 && index < size) {
            @SuppressWarnings("unchecked")
            final T e = (T) array[index++];
            action.accept(e);
            return true;
        }
        return false;
    }
Creates a {@link Spliterator} covering the given array and range.

@param array the array, assumed to be unmodified during use
@param origin the least index (inclusive) to cover
@param size one past the greatest index to cover
@param additionalCharacteristics Additional {@link Spliterator}
characteristics of this {@link Spliterator}'s source or elements beyond
{@code SIZED} and {@code SUBSIZED} which are are always reported
runtime-parent/runtime-core/src/main/java/com/speedment/runtime/core/internal/stream/parallel/ArraySpliterator.java