Newer
Older
import java.util.Iterator;
import java.util.NoSuchElementException;
class MatrixIterator<T> implements Iterator<T> {
private final Iterator<Coordinate> coordIterator;
private final Matrix<T> matrix;
public MatrixIterator(Matrix<T> matrix, Iterator<Coordinate> coordIterator) {
this.coordIterator = coordIterator;
this.matrix = matrix;
}
@Override
public boolean hasNext() {
return coordIterator.hasNext();
}
@Override
public T next() {
if (!hasNext()) {
throw new NoSuchElementException();
}
return matrix.get(coordIterator.next());
}
}