public boolean hasNext() { if (hasCached) { return true; } nextValue(); return hasCached; }
public Iterator<E> iterator() { return new Filterator<>(delegate.iterator(), containedPredicate); }
public boolean hasNext() { if (hasCached) { return true; } nextValue(); return hasCached; }
public Iterator<E> iterator() { return new Filterator<>(delegate.iterator(), containedPredicate); }