Package org.apache.lucene.index
Class Term
- java.lang.Object
-
- org.apache.lucene.index.Term
-
- All Implemented Interfaces:
java.lang.Comparable<Term>
,Accountable
public final class Term extends java.lang.Object implements java.lang.Comparable<Term>, Accountable
A Term represents a word from text. This is the unit of search. It is composed of two elements, the text of the word, as a string, and the name of the field that the text occurred in. Note that terms may represent more than words from text fields, but also things like dates, email addresses, urls, etc.
-
-
Field Summary
Fields Modifier and Type Field Description private static long
BASE_RAM_BYTES
(package private) BytesRef
bytes
(package private) java.lang.String
field
-
Fields inherited from interface org.apache.lucene.util.Accountable
NULL_ACCOUNTABLE
-
-
Constructor Summary
Constructors Constructor Description Term(java.lang.String fld)
Constructs a Term with the given field and empty text.Term(java.lang.String fld, java.lang.String text)
Constructs a Term with the given field and text.Term(java.lang.String fld, BytesRef bytes)
Constructs a Term with the given field and bytes.Term(java.lang.String fld, BytesRefBuilder bytesBuilder)
Constructs a Term with the given field and the bytes from a builder.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description BytesRef
bytes()
Returns the bytes of this term, these should not be modified.int
compareTo(Term other)
Compares two terms, returning a negative integer if this term belongs before the argument, zero if this term is equal to the argument, and a positive integer if this term belongs after the argument.boolean
equals(java.lang.Object obj)
java.lang.String
field()
Returns the field of this term.int
hashCode()
long
ramBytesUsed()
Return the memory usage of this object in bytes.(package private) void
set(java.lang.String fld, BytesRef bytes)
Resets the field and text of a Term.java.lang.String
text()
Returns the text of this term.java.lang.String
toString()
static java.lang.String
toString(BytesRef termText)
Returns human-readable form of the term text.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.lucene.util.Accountable
getChildResources
-
-
-
-
Field Detail
-
BASE_RAM_BYTES
private static final long BASE_RAM_BYTES
-
field
java.lang.String field
-
bytes
BytesRef bytes
-
-
Constructor Detail
-
Term
public Term(java.lang.String fld, BytesRef bytes)
Constructs a Term with the given field and bytes.Note that a null field or null bytes value results in undefined behavior for most Lucene APIs that accept a Term parameter.
The provided BytesRef is copied when it is non null.
-
Term
public Term(java.lang.String fld, BytesRefBuilder bytesBuilder)
Constructs a Term with the given field and the bytes from a builder.Note that a null field value results in undefined behavior for most Lucene APIs that accept a Term parameter.
-
Term
public Term(java.lang.String fld, java.lang.String text)
Constructs a Term with the given field and text.Note that a null field or null text value results in undefined behavior for most Lucene APIs that accept a Term parameter.
-
Term
public Term(java.lang.String fld)
Constructs a Term with the given field and empty text. This serves two purposes: 1) reuse of a Term with the same field. 2) pattern for a query.- Parameters:
fld
- field's name
-
-
Method Detail
-
field
public final java.lang.String field()
Returns the field of this term. The field indicates the part of a document which this term came from.
-
text
public final java.lang.String text()
Returns the text of this term. In the case of words, this is simply the text of the word. In the case of dates and other types, this is an encoding of the object as a string.
-
toString
public static final java.lang.String toString(BytesRef termText)
Returns human-readable form of the term text. If the term is not unicode, the raw bytes will be printed instead.
-
bytes
public final BytesRef bytes()
Returns the bytes of this term, these should not be modified.
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
compareTo
public final int compareTo(Term other)
Compares two terms, returning a negative integer if this term belongs before the argument, zero if this term is equal to the argument, and a positive integer if this term belongs after the argument. The ordering of terms is first by field, then by text.- Specified by:
compareTo
in interfacejava.lang.Comparable<Term>
-
set
final void set(java.lang.String fld, BytesRef bytes)
Resets the field and text of a Term.WARNING: the provided BytesRef is not copied, but used directly. Therefore the bytes should not be modified after construction, for example, you should clone a copy rather than pass reused bytes from a TermsEnum.
-
toString
public final java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
ramBytesUsed
public long ramBytesUsed()
Description copied from interface:Accountable
Return the memory usage of this object in bytes. Negative values are illegal.- Specified by:
ramBytesUsed
in interfaceAccountable
-
-