Given an iterator of Integers, create an iterator that will work correctly only iterating even integers. Ex given an iterator that iterates 1, 2, 3, 4, 5, the iterator should iterate 2, 4
Anonymous
class EvenIterator { private final Iterator iterator; private Integer nextItem; public EvenIterator(Iterator iterator) { this.iterator = iterator; setNextItem(); } public int next() { int next = nextItem; setNextItem(); return next; } public boolean hasNext() { return nextItem != null; } private void setNextItem() { while (iterator.hasNext()) { nextItem = iterator.next(); if ((nextItem & 1) == 0) { return; } } nextItem = null; } }
Check out your Company Bowl for anonymous work chats.