@Override public T next() { if (index >= size) { throw new NoSuchElementException(); } return readNextItem(reader, index++); }
@Override public T next() { if (index >= size) { throw new NoSuchElementException(); } return readNextItem(reader, index++); }
@Override public T next() { if (index >= size) { throw new NoSuchElementException(); } return readNextItem(reader, index++); }
@Override public T previous() { int targetIndex = index-1; reader.setOffset(startOffset); index = 0; while (index < targetIndex) { readNextItem(reader, index++); } return readNextItem(reader, index++); }
@Override public T previous() { int targetIndex = index-1; reader.setOffset(startOffset); index = 0; while (index < targetIndex) { readNextItem(reader, index++); } return readNextItem(reader, index++); }
@Override public T previous() { int targetIndex = index-1; reader.setOffset(startOffset); index = 0; while (index < targetIndex) { readNextItem(reader, index++); } return readNextItem(reader, index++); }