Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.math.linear
Class AbstractRealVector.SparseEntryIterator

    java.lang.Object
      org.apache.commons.math.linear.AbstractRealVector.SparseEntryIterator

All Implemented Interfaces:
  Iterator<RealVector.Entry>

Enclosing class:
  AbstractRealVector

    protected class AbstractRealVector.SparseEntryIterator

extends Object
implements Iterator<RealVector.Entry>

This class should rare be used, but is here to provide a default implementation of sparseIterator(), which is implemented by walking over the entries, skipping those whose values are the default one. Concrete subclasses which are SparseVector implementations should make their own sparse iterator, not use this one. This implementation might be useful for ArrayRealVector, when expensive operations which preserve the default value are to be done on the entries, and the fraction of non-default values is small (i.e. someone took a SparseVector, and passed it into the copy-constructor of ArrayRealVector)

Field Summary
`private AbstractRealVector.EntryImpl` | `current` last entry returned by `next()`
`private int` | `dim` Dimension of the vector.
`private AbstractRealVector.EntryImpl` | `next` Next entry for `next()` to return.

Constructor Summary
`protected` | `AbstractRealVector.SparseEntryIterator()` Simple constructor.

Method Summary
`protected void` | `advance(AbstractRealVector.EntryImpl e)` Advance an entry up to the next nonzero one.
`boolean` | `hasNext()`
`RealVector.Entry` | `next()`
`void` | `remove()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### dim

    private final int dim

  Dimension of the vector.

### current

    private AbstractRealVector.EntryImpl current

  last entry returned by `next()`

### next

    private AbstractRealVector.EntryImpl next

  Next entry for `next()` to return.

Constructor Detail

### AbstractRealVector.SparseEntryIterator

    protected AbstractRealVector.SparseEntryIterator()

  Simple constructor.

Method Detail

### advance

    protected void advance(AbstractRealVector.EntryImpl e)

  Advance an entry up to the next nonzero one.

  Parameters:
    `e` - entry to advance

### hasNext

    public boolean hasNext()

  Specified by:
    `hasNext` in interface `Iterator<RealVector.Entry>`

### next

    public RealVector.Entry next()

  Specified by:
    `next` in interface `Iterator<RealVector.Entry>`

### remove

    public void remove()

  Specified by:
    `remove` in interface `Iterator<RealVector.Entry>`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) 2003-2013 Apache Software Foundation