Package it.unimi.dsi.io
Class LineIterator
- java.lang.Object
-
- it.unimi.dsi.io.LineIterator
-
- All Implemented Interfaces:
it.unimi.dsi.fastutil.objects.ObjectIterator<MutableString>
,java.util.Iterator<MutableString>
public class LineIterator extends java.lang.Object implements it.unimi.dsi.fastutil.objects.ObjectIterator<MutableString>
An adapter that exposes a fast buffered reader as an iterator over the returned lines. Since we just actually read a line to know whetherhasNext()
should return true, the last line read from the underlying fast buffered reader has to be cached. Mixing calls to this adapter and to the underlying fast buffered reader will not usually give the expected results.Since this class allocates no resource, it is not
Closeable
and it will not close the underlyingFastBufferedReader
under any circumstances. If you need resource handling, tryFileLinesCollection
.This class reuses the same mutable strings. As a result, the comments for
FileLinesCollection
apply here. If you want just get all the remaining lines, useallLines()
.
-
-
Constructor Summary
Constructors Constructor Description LineIterator(FastBufferedReader fastBufferedReader)
Creates a new line iterator over a specified fast buffered reader.LineIterator(FastBufferedReader fastBufferedReader, ProgressLogger pl)
Creates a new line iterator over a specified fast buffered reader.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<MutableString>
allLines()
Returns all lines remaining in this iterator as a list.boolean
hasNext()
MutableString
next()
-
-
-
Constructor Detail
-
LineIterator
public LineIterator(FastBufferedReader fastBufferedReader, ProgressLogger pl)
Creates a new line iterator over a specified fast buffered reader.- Parameters:
fastBufferedReader
- the underlying buffered reader.pl
- an optional progress logger, ornull
.
-
LineIterator
public LineIterator(FastBufferedReader fastBufferedReader)
Creates a new line iterator over a specified fast buffered reader.- Parameters:
fastBufferedReader
- the underlying buffered reader.
-
-
Method Detail
-
hasNext
public boolean hasNext()
- Specified by:
hasNext
in interfacejava.util.Iterator<MutableString>
-
next
public MutableString next()
- Specified by:
next
in interfacejava.util.Iterator<MutableString>
-
allLines
public java.util.List<MutableString> allLines()
Returns all lines remaining in this iterator as a list.- Returns:
- all lines remaining in this iterator as a list.
-
-