java.lang.Object
org.apache.lucene.document.Field
org.apache.lucene.document.FloatField
- All Implemented Interfaces:
IndexableField
Field that stores a per-document
float value for scoring, sorting or value retrieval
and index the field for fast range filters. If you also need to store the value, you should add a
separate StoredField instance. If you need more fine-grained control you can use FloatPoint and FloatDocValuesField.
This field defines static factory methods for creating common queries:
newExactQuery(String, float)for matching an exact 1D point.newRangeQuery(String, float, float)for matching a 1D range.newSetQuery(String, float...)for matching a 1D set.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.lucene.document.Field
Field.Store -
Field Summary
FieldsFields inherited from class org.apache.lucene.document.Field
fieldsData, name, tokenStream, type -
Constructor Summary
ConstructorsConstructorDescriptionFloatField(String name, float value) Creates a new FloatField, indexing the provided point and storing it as a DocValue -
Method Summary
Modifier and TypeMethodDescriptionNon-null if this field has a binary valueprivate floatstatic QuerynewExactQuery(String field, float value) Create a query for matching an exact float value.static QuerynewRangeQuery(String field, float lowerValue, float upperValue) Create a range query for float values.static QuerynewSetQuery(String field, float... values) Create a query matching values in a supplied setstatic SortFieldnewSortField(String field, boolean reverse, SortedNumericSelector.Type selector) Create a newSortFieldfor float values.voidsetFloatValue(float value) Expert: change the value of this field.voidsetLongValue(long value) Expert: change the value of this field.toString()Prints a Field for human consumption.Methods inherited from class org.apache.lucene.document.Field
fieldType, getCharSequenceValue, name, numericValue, readerValue, setBytesValue, setBytesValue, setByteValue, setDoubleValue, setIntValue, setReaderValue, setShortValue, setStringValue, setTokenStream, stringValue, tokenStream, tokenStreamValue
-
Field Details
-
FIELD_TYPE
-
-
Constructor Details
-
FloatField
Creates a new FloatField, indexing the provided point and storing it as a DocValue- Parameters:
name- field namevalue- the float value- Throws:
IllegalArgumentException- if the field name or value is null.
-
-
Method Details
-
binaryValue
Description copied from interface:IndexableFieldNon-null if this field has a binary value- Specified by:
binaryValuein interfaceIndexableField- Overrides:
binaryValuein classField
-
getValueAsFloat
private float getValueAsFloat() -
toString
Description copied from class:FieldPrints a Field for human consumption. -
setFloatValue
public void setFloatValue(float value) Description copied from class:FieldExpert: change the value of this field. SeeField.setStringValue(String).- Overrides:
setFloatValuein classField
-
setLongValue
public void setLongValue(long value) Description copied from class:FieldExpert: change the value of this field. SeeField.setStringValue(String).- Overrides:
setLongValuein classField
-
newExactQuery
Create a query for matching an exact float value.- Parameters:
field- field name. must not benull.value- exact value- Returns:
- a query matching documents with this exact value
- Throws:
IllegalArgumentException- iffieldis null.
-
newRangeQuery
Create a range query for float values.You can have half-open ranges (which are in fact </≤ or >/≥ queries) by setting
lowerValue = Float.NEGATIVE_INFINITYorupperValue = Float.POSITIVE_INFINITY.Range comparisons are consistent with
Float.compareTo(Float).- Parameters:
field- field name. must not benull.lowerValue- lower portion of the range (inclusive).upperValue- upper portion of the range (inclusive).- Returns:
- a query matching documents within this range.
- Throws:
IllegalArgumentException- iffieldis null.
-
newSetQuery
Create a query matching values in a supplied set- Parameters:
field- field name. must not benull.values- float values- Returns:
- a query matching documents within this set.
- Throws:
IllegalArgumentException- iffieldis null.
-
newSortField
public static SortField newSortField(String field, boolean reverse, SortedNumericSelector.Type selector) Create a newSortFieldfor float values.- Parameters:
field- field name. must not benull.reverse- true if natural order should be reversed.selector- custom selector type for choosing the sort value from the set.
-