code: public boolean hasNext() {
          while (next == null && iterator.hasNext()) {
              E element = iterator.next();
  
              if (filter.accept(element)) {
                  next = element;
                  break;
              }
          }
  
          return next != null;
      }
docs: Returns {@code true} if the iteration has more elements. (In other
  words, returns {@code true} if {@code next} would return an element
  rather than throwing an exception.)
  
  @return {@code true} if the iterator has more elements.
  @see FilterIterator.Filter#accept