Package org.apache.lucene.util
Class IntsRef
- java.lang.Object
-
- org.apache.lucene.util.IntsRef
-
- All Implemented Interfaces:
Cloneable
,Comparable<IntsRef>
public final class IntsRef extends Object implements Comparable<IntsRef>, Cloneable
Represents int[], as a slice (offset + length) into an existing int[]. Theints
member should never be null; useEMPTY_INTS
if necessary.
-
-
Field Summary
Fields Modifier and Type Field Description static int[]
EMPTY_INTS
An empty integer array for convenienceint[]
ints
The contents of the IntsRef.int
length
Length of used ints.int
offset
Offset of first valid integer.
-
Constructor Summary
Constructors Constructor Description IntsRef()
Create a IntsRef withEMPTY_INTS
IntsRef(int capacity)
Create a IntsRef pointing to a new array of sizecapacity
.IntsRef(int[] ints, int offset, int length)
This instance will directly reference ints w/o making a copy.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description IntsRef
clone()
Returns a shallow clone of this instance (the underlying ints are not copied and will be shared by both the returned object and this object.int
compareTo(IntsRef other)
Signed int order comparisonvoid
copyInts(IntsRef other)
static IntsRef
deepCopyOf(IntsRef other)
Creates a new IntsRef that points to a copy of the ints fromother
boolean
equals(Object other)
void
grow(int newLength)
Used to grow the reference array.int
hashCode()
boolean
intsEquals(IntsRef other)
boolean
isValid()
Performs internal consistency checks.String
toString()
-
-
-
Constructor Detail
-
IntsRef
public IntsRef()
Create a IntsRef withEMPTY_INTS
-
IntsRef
public IntsRef(int capacity)
Create a IntsRef pointing to a new array of sizecapacity
. Offset and length will both be zero.
-
IntsRef
public IntsRef(int[] ints, int offset, int length)
This instance will directly reference ints w/o making a copy. ints should not be null.
-
-
Method Detail
-
clone
public IntsRef clone()
Returns a shallow clone of this instance (the underlying ints are not copied and will be shared by both the returned object and this object.- Overrides:
clone
in classObject
- See Also:
deepCopyOf(org.apache.lucene.util.IntsRef)
-
intsEquals
public boolean intsEquals(IntsRef other)
-
compareTo
public int compareTo(IntsRef other)
Signed int order comparison- Specified by:
compareTo
in interfaceComparable<IntsRef>
-
copyInts
public void copyInts(IntsRef other)
-
grow
public void grow(int newLength)
Used to grow the reference array. In general this should not be used as it does not take the offset into account.
-
deepCopyOf
public static IntsRef deepCopyOf(IntsRef other)
Creates a new IntsRef that points to a copy of the ints fromother
The returned IntsRef will have a length of other.length and an offset of zero.
-
isValid
public boolean isValid()
Performs internal consistency checks. Always returns true (or throws IllegalStateException)
-
-