package com.googlecode.totallylazy.iterators;
import java.util.Iterator;
import java.util.NoSuchElementException;
public class TakeIterator<T> extends ReadOnlyIterator<T> {
private final Iterator<? extends T> iterator;
private int count;
public TakeIterator(Iterator<? extends T> iterator, int count) {
this.iterator = iterator;
this.count = count;
}
@Override
public boolean hasNext() {
return count > 0 && iterator.hasNext();
}
@Override
public T next() {
if(hasNext()) {
count--;
return iterator.next();
}
throw new NoSuchElementException();
}
}