com.annimon.stream.operator.ObjMapToLong Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of stream Show documentation
Show all versions of stream Show documentation
Stream API from Java 8 rewritten on iterators for Java 7 and below
package com.annimon.stream.operator;
import com.annimon.stream.function.ToLongFunction;
import com.annimon.stream.iterator.PrimitiveIterator;
import java.util.Iterator;
public class ObjMapToLong extends PrimitiveIterator.OfLong {
private final Iterator extends T> iterator;
private final ToLongFunction super T> mapper;
public ObjMapToLong(Iterator extends T> iterator, ToLongFunction super T> mapper) {
this.iterator = iterator;
this.mapper = mapper;
}
@Override
public boolean hasNext() {
return iterator.hasNext();
}
@Override
public long nextLong() {
return mapper.applyAsLong(iterator.next());
}
}