Class FilteredIterator<E>

Type Parameters:
E - The type of element returned by the iterator.
All Implemented Interfaces:
Iterator<E>

public class FilteredIterator<E> extends AbstractFilteredIterator<E>
An iterator that filters an existing iterator using a Filter.

This version does not support AbstractPrimedIterator.remove().

This version releases the decorated iterator when iteration is finished.

This class is not thread safe.

Author:
Garret Wilson
  • Constructor Details

    • FilteredIterator

      public FilteredIterator(Iterator<E> iterator, Filter<E> filter)
      Decorated iterator and filter constructor.
      Parameters:
      iterator - The decorated iterator to be filtered.
      filter - The filter for this iterator's elements.
      Throws:
      NullPointerException - if the given iterator and/or filter is null.
  • Method Details

    • isPass

      protected boolean isPass(E element)
      Indicates whether the given element is included when filtering. This version delegates to Filter.isPass(Object).
      Specified by:
      isPass in class AbstractFilteredIterator<E>
      Parameters:
      element - The element in the filtered iterator.
      Returns:
      true if the element should be included, or null if it should be filtered out.