Package edu.jas.arith
Class BigRationalUniqueIterator
- java.lang.Object
-
- edu.jas.arith.BigRationalUniqueIterator
-
- All Implemented Interfaces:
java.util.Iterator<BigRational>
class BigRationalUniqueIterator extends java.lang.Object implements java.util.Iterator<BigRational>
Big rational unique iterator. Uses Cantors diagonal enumeration, produces distinct elements.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.util.Iterator<BigRational>
ratit
(package private) java.util.Set<BigRational>
unique
data structure.
-
Constructor Summary
Constructors Constructor Description BigRationalUniqueIterator()
BigRational iterator constructor.BigRationalUniqueIterator(java.util.Iterator<BigRational> rit)
BigRational iterator constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
hasNext()
Test for availability of a next element.BigRational
next()
Get next rational.void
remove()
Remove an element if allowed.
-
-
-
Field Detail
-
unique
final java.util.Set<BigRational> unique
data structure.
-
ratit
final java.util.Iterator<BigRational> ratit
-
-
Constructor Detail
-
BigRationalUniqueIterator
public BigRationalUniqueIterator()
BigRational iterator constructor.
-
BigRationalUniqueIterator
public BigRationalUniqueIterator(java.util.Iterator<BigRational> rit)
BigRational iterator constructor.- Parameters:
rit
- backing rational iterator of non unique elements
-
-
Method Detail
-
hasNext
public boolean hasNext()
Test for availability of a next element.- Specified by:
hasNext
in interfacejava.util.Iterator<BigRational>
- Returns:
- true if the iteration has more elements, else false.
-
next
public BigRational next()
Get next rational.- Specified by:
next
in interfacejava.util.Iterator<BigRational>
- Returns:
- next rational.
-
remove
public void remove()
Remove an element if allowed.- Specified by:
remove
in interfacejava.util.Iterator<BigRational>
-
-