hg: lambda/lambda/jdk: Add BitSet.stream()
Remi Forax
forax at univ-mlv.fr
Fri Dec 28 10:43:26 PST 2012
On 12/28/2012 07:25 PM, brian.goetz at oracle.com wrote:
> Changeset: 606aa9a80b6d
> Author: briangoetz
> Date: 2012-12-28 13:25 -0500
> URL: http://hg.openjdk.java.net/lambda/lambda/jdk/rev/606aa9a80b6d
>
> Add BitSet.stream()
>
> ! src/share/classes/java/util/Arrays.java
> ! src/share/classes/java/util/BitSet.java
> ! src/share/classes/java/util/stream/reduce/Reducers.java
> + test-ng/tests/org/openjdk/tests/java/util/BitsetStreamTest.java
>
>
There is an easier implementation of BitSetIterator because nextSetBit
has no side effect.
class BitSetIterator implements PrimitiveIterator.OfInt {
private int next = nextSetBit(0);
@Override
public boolean hasNext() {
return next != -1;
}
@Override
public int nextInt() {
int index = next;
if (index == -1) {
throw new NoSuchElementException();
}
next = nextSetBit(index + 1);
return index;
}
}
cheers,
Rémi
More information about the lambda-dev
mailing list