Javolution 6.0.0 java
BitSetIteratorImpl.java
Go to the documentation of this file.
1
/*
2
* Javolution - Java(TM) Solution for Real-Time and Embedded Systems
3
* Copyright (C) 2012 - Javolution (http://javolution.org/)
4
* All rights reserved.
5
*
6
* Permission to use, copy, modify, and distribute this software is
7
* freely granted, provided that this notice is preserved.
8
*/
9
package
javolution.util.internal.bitset;
10
11
import
java.util.Iterator;
12
import
java.util.NoSuchElementException;
13
14
import
javolution
.
util
.
Index
;
15
import
javolution
.
util
.
service
.
BitSetService
;
16
20
public
final
class
BitSetIteratorImpl
implements
Iterator<Index> {
21
22
private
final
BitSetService
that
;
23
24
private
int
nextIndex
;
25
26
private
int
currentIndex
= -1;
27
28
public
BitSetIteratorImpl
(
BitSetService
that
,
int
index) {
29
this.that =
that
;
30
this.nextIndex =
that
.
nextSetBit
(index);
31
}
32
33
public
boolean
hasNext
() {
34
return
(
nextIndex
>= 0);
35
}
36
37
public
Index
next
() {
38
if
(
nextIndex
< 0)
39
throw
new
NoSuchElementException();
40
currentIndex
=
nextIndex
;
41
nextIndex
=
that
.
nextSetBit
(
nextIndex
);
42
return
Index
.
valueOf
(
currentIndex
);
43
}
44
45
public
void
remove
() {
46
if
(
currentIndex
< 0)
47
throw
new
IllegalStateException();
48
that
.
clear
(
currentIndex
);
49
currentIndex
= -1;
50
}
51
}
javolution
javolution.util.service
Definition:
BitSetService.java:9
javolution.util.Index.valueOf
static Index valueOf(int value)
Definition:
Index.java:111
javolution.util.internal.bitset.BitSetIteratorImpl
Definition:
BitSetIteratorImpl.java:20
javolution.util.internal.bitset.BitSetIteratorImpl.that
final BitSetService that
Definition:
BitSetIteratorImpl.java:22
javolution.util.internal.bitset.BitSetIteratorImpl.hasNext
boolean hasNext()
Definition:
BitSetIteratorImpl.java:33
javolution.util.internal.bitset.BitSetIteratorImpl.currentIndex
int currentIndex
Definition:
BitSetIteratorImpl.java:26
javolution.util.service.BitSetService
Definition:
BitSetService.java:23
javolution.util.Index
Definition:
Index.java:44
javolution.util.service.BitSetService.nextSetBit
int nextSetBit(int fromIndex)
javolution.util.internal.bitset.BitSetIteratorImpl.nextIndex
int nextIndex
Definition:
BitSetIteratorImpl.java:24
javolution.util.service.BitSetService.clear
void clear(int bitIndex)
javolution.util.internal.bitset.BitSetIteratorImpl.next
Index next()
Definition:
BitSetIteratorImpl.java:37
javolution.util.internal.bitset.BitSetIteratorImpl.BitSetIteratorImpl
BitSetIteratorImpl(BitSetService that, int index)
Definition:
BitSetIteratorImpl.java:28
javolution.util
Definition:
FastBitSet.java:9
core-java
src
main
java
javolution
util
internal
bitset
BitSetIteratorImpl.java
Generated by
1.8.18