org.apache.lucene.index
Class Term

java.lang.Object
  extended by org.apache.lucene.index.Term
All Implemented Interfaces:
Serializable, Comparable<Term>

public final class Term
extends Object
implements Comparable<Term>, Serializable

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, an interned string. Note that terms may represent more than words from text fields, but also things like dates, email addresses, urls, etc.

See Also:
Serialized Form

Constructor Summary
Term(String fld)
          Constructs a Term with the given field and empty text.
Term(String fld, String txt)
          Constructs a Term with the given field and text.
 
Method Summary
 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.
 Term createTerm(String text)
          Optimized construction of new Terms by reusing same field as this Term - avoids field.intern() overhead
 boolean equals(Object obj)
           
 String field()
          Returns the field of this term, an interned string.
 int hashCode()
           
 String text()
          Returns the text of this term.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Term

public Term(String fld,
            String txt)
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(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 -
Method Detail

field

public final String field()
Returns the field of this term, an interned string. The field indicates the part of a document which this term came from.


text

public final 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.


createTerm

public Term createTerm(String text)
Optimized construction of new Terms by reusing same field as this Term - avoids field.intern() overhead

Parameters:
text - The text of the new term (field is implicitly same as this Term instance)
Returns:
A new Term

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class 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 interface Comparable<Term>

toString

public final String toString()
Overrides:
toString in class Object