Как реализовать этот FilteringIterator?

  1. IObjectTest - это интерфейс с метод одиночного логического теста (Object o)

  2. FilteringIterator - это реализация Iterator, которая инициализирован другим итератором и экземпляр IObjectTest: новый FilteringIterator (myIterator, myTest). Ваш FilteringIterator будет затем разрешите итерацию 'myIterator', но пропуская любые объекты, которые не проходят Тест 'myTest'.

Поскольку операция hasNext фактически включает в себя повторное перемещение базового итератора пока не дойдете до следующего совпадающего элемента. Вопрос в том, как переместить итератор назад, поскольку hasNext не должен перемещать базовый итератор.

9
задан Gareth McCaughan 29 March 2011 в 15:31
поделиться