Class LimitingBooleanIterator
java.lang.Object
com.github.tommyettinger.ds.support.util.LimitingBooleanIterator
- All Implemented Interfaces:
BooleanIterator,Iterator<Boolean>
Wraps an Iterator so that it only returns at most a specific amount of items (defined by calls to
You can change the Iterator and limit at once using
nextBoolean(). This can be useful to limit infinite Iterators so they only produce a finite amount of results.
This has undefined behavior if any items the Iterator could return are modified during iteration.
You can change the Iterator and limit at once using
set(BooleanIterator, int), and can also just
change the Iterator with set(BooleanIterator).-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected intprotected int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanhasNext()booleanReturns the nextbooleanelement in the iteration.voidremove()voidset(BooleanIterator iterator) voidset(BooleanIterator iterator, int limit) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.github.tommyettinger.ds.support.util.BooleanIterator
forEachRemaining, nextMethods inherited from interface java.util.Iterator
forEachRemaining
-
Field Details
-
iterator
-
limit
protected int limit -
remaining
protected int remaining
-
-
Constructor Details
-
LimitingBooleanIterator
public LimitingBooleanIterator() -
LimitingBooleanIterator
-
-
Method Details
-
set
-
set
-
hasNext
public boolean hasNext() -
nextBoolean
public boolean nextBoolean()Description copied from interface:BooleanIteratorReturns the nextbooleanelement in the iteration.- Specified by:
nextBooleanin interfaceBooleanIterator- Returns:
- the next
booleanelement in the iteration
-
remove
public void remove()
-