Represents a linked list with each node of the list storing
a primitive int data type. Unlike the java.util.LinkedList, it avoids
the need to wrap the float number in a Float object. This avoids
unnecessary object creation, and is therefore faster and saves memory.
However, it does not implement the java.util.List interface.
This linked list is used as a replacement for a simple array of
ints. Certain performance critical loops have had performance
issues due to the overhead associated with array index bounds
checking performed by the VM. Using this type of data structure
allowed the checking to be bypassed. Note however that we've seen
great improvement in compiler performance in this area such that we
may be able to revert to using an array without any performance
[[[ TODO look at replacing this with a simple int array ]]]
Returns the next float in the list, advances the iterator.
The hasNext() method MUST be called before calling
this method to check if the iterator is point to null,
otherwise NullPointerException will be thrown.