@Override protected final DoubleVectorElement computeNext() { // look for the element that has a bit set while (index < getDimension() && !vector.get(index)) { index++; } if (index < getDimension()) { element.setIndex(index); element.setValue(get(index)); index++; return element; } else { return endOfData(); } }
@Override protected final DoubleVectorElement computeNext() { if (currentIndex >= array.length) return endOfData(); while (array[currentIndex] == 0.0d) { currentIndex++; if (currentIndex >= array.length) return endOfData(); } element.setIndex(currentIndex); element.setValue(array[currentIndex]); currentIndex++; return element; } }
@Override protected DoubleVectorElement computeNext() { if (index < getDimension()) { element.setIndex(index); element.setValue(get(index)); index++; return element; } else { return endOfData(); } }
@Override protected final DoubleVectorElement computeNext() { if (currentIndex < mapping.getNumMappings()) { element.setIndex(mapping.getIndices()[currentIndex]); element.setValue(mapping.getValues()[currentIndex]); currentIndex++; return element; } else { return endOfData(); } }
@Override protected DoubleVectorElement computeNext() { if (index < getDimension()) { element.setIndex(index); element.setValue(get(index)); index++; return element; } else { return endOfData(); } }
@Override protected final DoubleVectorElement computeNext() { if (currentIndex < array.length) { element.setIndex(currentIndex); element.setValue(array[currentIndex]); currentIndex++; return element; } else { return endOfData(); } }
@Override protected DoubleVectorElement computeNext() { if (index < getDimension()) { element.setIndex(index); element.setValue(get(index)); index++; return element; } else { return endOfData(); } }
@Override protected DoubleVectorElement computeNext() { if (value == 0d || done) { return endOfData(); } done = true; DoubleVectorElement doubleVectorElement = new DoubleVectorElement(); doubleVectorElement.setIndex(0); doubleVectorElement.setValue(value); return doubleVectorElement; } };
@Override protected final DoubleVectorElement computeNext() { if (currentIndex < vector.size()) { currentIndex++; iterator.advance(); element.setIndex(iterator.key()); element.setValue(iterator.value()); return element; } else { return endOfData(); } }
@Override protected DoubleVectorElement computeNext() { if (done) { return endOfData(); } done = true; DoubleVectorElement doubleVectorElement = new DoubleVectorElement(); doubleVectorElement.setIndex(0); doubleVectorElement.setValue(value); return doubleVectorElement; } };