Class FilterIterator<E>

java.lang.Object
org.miaixz.bus.core.center.iterator.FilterIterator<E>
Type Parameters:
E - 元素类型
All Implemented Interfaces:
Iterator<E>

public class FilterIterator<E> extends Object implements Iterator<E>
包装 Iterator并根据Predicate定义,过滤元素输出 类实现来自Apache Commons Collection
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • FilterIterator

      public FilterIterator(Iterator<? extends E> iterator, Predicate<? super E> filter)
      构造
      Parameters:
      iterator - 被包装的Iterator
      filter - 过滤函数,null表示不过滤
      Throws:
      NullPointerException - iteratornull时抛出
  • Method Details

    • hasNext

      public boolean hasNext()
      Specified by:
      hasNext in interface Iterator<E>
    • next

      public E next()
      Specified by:
      next in interface Iterator<E>
    • remove

      public void remove()
      Specified by:
      remove in interface Iterator<E>
    • getIterator

      public Iterator<? extends E> getIterator()
      获取被包装的Iterator
      Returns:
      Iterator
    • getFilter

      public Predicate<? super E> getFilter()
      获取过滤函数
      Returns:
      过滤函数,可能为null