private class ArrayStaticIntegerDBIDs.Slice extends Object implements IntegerArrayDBIDs
Modifier and Type | Class and Description |
---|---|
private class |
ArrayStaticIntegerDBIDs.Slice.SliceItr
Iterator class.
|
Modifier and Type | Field and Description |
---|---|
(package private) int |
begin
Slice positions.
|
(package private) int |
end
Slice positions.
|
Constructor and Description |
---|
ArrayStaticIntegerDBIDs.Slice(int begin,
int end)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
assignVar(int index,
DBIDVar var)
Assign a DBID variable the value of position
index . |
int |
binarySearch(DBIDRef key)
Search for the position of the given key, assuming that the data set is
sorted.
|
boolean |
contains(DBIDRef o)
Test whether an ID is contained.
|
DBID |
get(int i)
Get the i'th entry (starting at 0)
If possible, use an
DBIDArrayIter via ArrayDBIDs.iter() instead! |
boolean |
isEmpty()
Test for an empty DBID collection.
|
ArrayStaticIntegerDBIDs.Slice.SliceItr |
iter()
Get a DBID iterator (a more efficient API).
|
int |
size()
Retrieve the collection / data size.
|
ArrayStaticIntegerDBIDs.Slice |
slice(int begin,
int end)
Slice a subarray (as view, not copy!)
|
public ArrayStaticIntegerDBIDs.Slice(int begin, int end)
begin
- Begin, inclusiveend
- End, exclusivepublic int size()
DBIDs
size
in interface ArrayDBIDs
size
in interface DBIDs
public boolean contains(DBIDRef o)
DBIDs
public boolean isEmpty()
DBIDs
public DBID get(int i)
ArrayDBIDs
DBIDArrayIter
via ArrayDBIDs.iter()
instead!get
in interface ArrayDBIDs
i
- Indexpublic void assignVar(int index, DBIDVar var)
ArrayDBIDs
index
.assignVar
in interface ArrayDBIDs
index
- Positionvar
- Variable to assign the value to.public int binarySearch(DBIDRef key)
ArrayDBIDs
-(1+insertion position)
is returned, as
for Java Collections.binarySearch(java.util.List<? extends java.lang.Comparable<? super T>>, T)
binarySearch
in interface ArrayDBIDs
key
- Key to search forpublic ArrayStaticIntegerDBIDs.Slice.SliceItr iter()
DBIDs
for(DBIDIter iter = ids.iter(); iter.valid(); iter.advance()) {
DBID id = iter.getDBID();
}
iter
in interface ArrayDBIDs
iter
in interface DBIDs
iter
in interface IntegerArrayDBIDs
iter
in interface IntegerDBIDs
public ArrayStaticIntegerDBIDs.Slice slice(int begin, int end)
ArrayDBIDs
slice
in interface ArrayDBIDs
slice
in interface IntegerArrayDBIDs
begin
- Begin (inclusive)end
- End (exclusive)