Skip to content
Snippets Groups Projects
MatrixIterator.java 658 B
Newer Older
  • Learn to ignore specific revisions
  • Guyslain's avatar
    Guyslain committed
    package matrix;
    
    Guyslain's avatar
    Guyslain committed
    
    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());
        }
    }