Package org.apache.lucene.util
Class CharsRef
java.lang.Object
org.apache.lucene.util.CharsRef
- All Implemented Interfaces:
CharSequence
,Cloneable
,Comparable<CharsRef>
Represents char[], as a slice (offset + length) into an existing char[]. The
chars
member should never be null; use EMPTY_CHARS
if necessary.- NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
-
Field Summary
Modifier and TypeFieldDescriptionchar[]
The contents of the CharsRef.static final char[]
An empty character array for convenienceint
Length of used characters.int
Offset of first valid character. -
Constructor Summary
ConstructorDescriptionCharsRef()
Creates a newCharsRef
initialized an empty array zero-lengthCharsRef
(char[] chars, int offset, int length) Creates a newCharsRef
initialized with the given array, offset and lengthCharsRef
(int capacity) Creates a newCharsRef
initialized with an array of the given capacityCreates a newCharsRef
initialized with the given Strings character array -
Method Summary
Modifier and TypeMethodDescriptionchar
charAt
(int index) boolean
charsEquals
(CharsRef other) clone()
Returns a shallow clone of this instance (the underlying characters are not copied and will be shared by both the returned object and this object.int
Signed int order comparisonstatic CharsRef
deepCopyOf
(CharsRef other) Creates a new CharsRef that points to a copy of the chars fromother
boolean
static Comparator<CharsRef>
Deprecated.This comparator is only a transition mechanismint
hashCode()
boolean
isValid()
Performs internal consistency checks.int
length()
static int
stringHashCode
(char[] chars, int offset, int length) subSequence
(int start, int end) toString()
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.CharSequence
chars, codePoints
-
Field Details
-
EMPTY_CHARS
public static final char[] EMPTY_CHARSAn empty character array for convenience -
chars
public char[] charsThe contents of the CharsRef. Should never benull
. -
offset
public int offsetOffset of first valid character. -
length
public int lengthLength of used characters.
-
-
Constructor Details
-
CharsRef
public CharsRef()Creates a newCharsRef
initialized an empty array zero-length -
CharsRef
public CharsRef(int capacity) Creates a newCharsRef
initialized with an array of the given capacity -
CharsRef
public CharsRef(char[] chars, int offset, int length) Creates a newCharsRef
initialized with the given array, offset and length -
CharsRef
Creates a newCharsRef
initialized with the given Strings character array
-
-
Method Details
-
clone
Returns a shallow clone of this instance (the underlying characters are not copied and will be shared by both the returned object and this object. -
hashCode
public int hashCode() -
stringHashCode
public static int stringHashCode(char[] chars, int offset, int length) - Returns:
- the hash code of the given char sub-array, calculated by
String.hashCode()
specification
-
equals
-
charsEquals
-
compareTo
Signed int order comparison- Specified by:
compareTo
in interfaceComparable<CharsRef>
-
toString
- Specified by:
toString
in interfaceCharSequence
- Overrides:
toString
in classObject
-
length
public int length()- Specified by:
length
in interfaceCharSequence
-
charAt
public char charAt(int index) - Specified by:
charAt
in interfaceCharSequence
-
subSequence
- Specified by:
subSequence
in interfaceCharSequence
-
getUTF16SortedAsUTF8Comparator
Deprecated.This comparator is only a transition mechanism -
deepCopyOf
Creates a new CharsRef that points to a copy of the chars fromother
The returned CharsRef 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)
-