Package org.apache.lucene.util
Class CharsRef
- java.lang.Object
-
- org.apache.lucene.util.CharsRef
-
- All Implemented Interfaces:
CharSequence,Cloneable,Comparable<CharsRef>
public final class CharsRef extends Object implements Comparable<CharsRef>, CharSequence, Cloneable
Represents char[], as a slice (offset + length) into an existing char[]. Thecharsmember should never be null; useEMPTY_CHARSif necessary.- NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
-
-
Field Summary
Fields Modifier and Type Field Description char[]charsThe contents of the CharsRef.static char[]EMPTY_CHARSAn empty character array for convenienceintlengthLength of used characters.intoffsetOffset of first valid character.
-
Constructor Summary
Constructors Constructor Description CharsRef()Creates a newCharsRefinitialized an empty array zero-lengthCharsRef(char[] chars, int offset, int length)Creates a newCharsRefinitialized with the given array, offset and lengthCharsRef(int capacity)Creates a newCharsRefinitialized with an array of the given capacityCharsRef(String string)Creates a newCharsRefinitialized with the given Strings character array
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description charcharAt(int index)booleancharsEquals(CharsRef other)CharsRefclone()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.intcompareTo(CharsRef other)Signed int order comparisonstatic CharsRefdeepCopyOf(CharsRef other)Creates a new CharsRef that points to a copy of the chars fromotherbooleanequals(Object other)static Comparator<CharsRef>getUTF16SortedAsUTF8Comparator()Deprecated.This comparator is only a transition mechanisminthashCode()booleanisValid()Performs internal consistency checks.intlength()static intstringHashCode(char[] chars, int offset, int length)CharSequencesubSequence(int start, int end)StringtoString()-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.lang.CharSequence
chars, codePoints
-
-
-
-
Constructor Detail
-
CharsRef
public CharsRef()
Creates a newCharsRefinitialized an empty array zero-length
-
CharsRef
public CharsRef(int capacity)
Creates a newCharsRefinitialized with an array of the given capacity
-
CharsRef
public CharsRef(char[] chars, int offset, int length)Creates a newCharsRefinitialized with the given array, offset and length
-
-
Method Detail
-
clone
public CharsRef 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.- Overrides:
clonein classObject- See Also:
deepCopyOf(org.apache.lucene.util.CharsRef)
-
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
-
charsEquals
public boolean charsEquals(CharsRef other)
-
compareTo
public int compareTo(CharsRef other)
Signed int order comparison- Specified by:
compareToin interfaceComparable<CharsRef>
-
toString
public String toString()
- Specified by:
toStringin interfaceCharSequence- Overrides:
toStringin classObject
-
length
public int length()
- Specified by:
lengthin interfaceCharSequence
-
charAt
public char charAt(int index)
- Specified by:
charAtin interfaceCharSequence
-
subSequence
public CharSequence subSequence(int start, int end)
- Specified by:
subSequencein interfaceCharSequence
-
getUTF16SortedAsUTF8Comparator
@Deprecated public static Comparator<CharsRef> getUTF16SortedAsUTF8Comparator()
Deprecated.This comparator is only a transition mechanism
-
deepCopyOf
public static CharsRef deepCopyOf(CharsRef other)
Creates a new CharsRef that points to a copy of the chars fromotherThe 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)
-
-