org.apache.lucene.search

## Class FieldComparator.FloatComparator

- java.lang.Object
- - org.apache.lucene.search.FieldComparator<T>
  - - org.apache.lucene.search.FieldComparator.NumericComparator<Float>
    - - org.apache.lucene.search.FieldComparator.FloatComparator

Enclosing class:
  FieldComparator<T>

    public static final class FieldComparator.FloatComparator
    extends FieldComparator.NumericComparator<Float>

Parses field's values as float (using `FieldCache.getFloats(org.apache.lucene.index.AtomicReader, java.lang.String, boolean)` and sorts by ascending value

### Nested Class Summary

### Nested classes/interfaces inherited from class org.apache.lucene.search.FieldComparator

`FieldComparator.ByteComparator, FieldComparator.DocComparator, FieldComparator.DoubleComparator, FieldComparator.FloatComparator, FieldComparator.IntComparator, FieldComparator.LongComparator, FieldComparator.NumericComparator<T extends Number>, FieldComparator.RelevanceComparator, FieldComparator.ShortComparator, FieldComparator.TermOrdValComparator, FieldComparator.TermValComparator`

### Field Summary

### Fields inherited from class org.apache.lucene.search.FieldComparator.NumericComparator

`docsWithField, field, missingValue`

### Method Summary

Methods
`int` `compare(int slot1, int slot2)` Compare hit at slot1 with hit at slot2.
`int` `compareBottom(int doc)` Compare the bottom of the queue with doc.
`int` `compareDocToValue(int doc, Float valueObj)` Returns negative result if the doc's value is less than the provided value.
`void` `copy(int slot, int doc)` This method is called when a new hit is competitive.
`void` `setBottom(int bottom)` Set the bottom slot, ie the "weakest" (sorted last) entry in the queue.
`FieldComparator<Float>` `setNextReader(AtomicReaderContext context)` Set a new `AtomicReaderContext`.
`Float` `value(int slot)` Return the actual value in the slot.

### Methods inherited from class org.apache.lucene.search.FieldComparator

`compareValues, setScorer`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### compare

    public int compare(int slot1,
              int slot2)

Description copied from class: `FieldComparator`
Compare hit at slot1 with hit at slot2.

Specified by:
  `compare` in class `FieldComparator<Float>`
Parameters:
  `slot1` - first slot to compare
  `slot2` - second slot to compare
Returns:
  any N < 0 if slot2's value is sorted after slot1, any N > 0 if the slot2's value is sorted before slot1 and 0 if they are equal

#### compareBottom

    public int compareBottom(int doc)

Description copied from class: `FieldComparator`
Compare the bottom of the queue with doc. This will only invoked after setBottom has been called. This should return the same result as `FieldComparator.compare(int,int)`} as if bottom were slot1 and the new document were slot 2.

For a search that hits many results, this method will be the hotspot (invoked by far the most frequently).

Specified by:
  `compareBottom` in class `FieldComparator<Float>`
Parameters:
  `doc` - that was hit
Returns:
  any N < 0 if the doc's value is sorted after the bottom entry (not competitive), any N > 0 if the doc's value is sorted before the bottom entry and 0 if they are equal.

#### copy

    public void copy(int slot,
            int doc)

Description copied from class: `FieldComparator`
This method is called when a new hit is competitive. You should copy any state associated with this document that will be required for future comparisons, into the specified slot.

Specified by:
  `copy` in class `FieldComparator<Float>`
Parameters:
  `slot` - which slot to copy the hit to
  `doc` - docID relative to current reader

#### setNextReader

    public FieldComparator<Float> setNextReader(AtomicReaderContext context)
                                         throws IOException

Description copied from class: `FieldComparator`
Set a new `AtomicReaderContext`. All subsequent docIDs are relative to the current reader (you must add docBase if you need to map it to a top-level docID).

Overrides:
  `setNextReader` in class `FieldComparator.NumericComparator<Float>`
Parameters:
  `context` - current reader context
Returns:
  the comparator to use for this segment; most comparators can just return "this" to reuse the same comparator across segments
Throws:
  `IOException` - if there is a low-level IO error

#### setBottom

    public void setBottom(int bottom)

Description copied from class: `FieldComparator`
Set the bottom slot, ie the "weakest" (sorted last) entry in the queue. When `FieldComparator.compareBottom(int)` is called, you should compare against this slot. This will always be called before `FieldComparator.compareBottom(int)`.

Specified by:
  `setBottom` in class `FieldComparator<Float>`
Parameters:
  `bottom` - the currently weakest (sorted last) slot in the queue

#### value

    public Float value(int slot)

Description copied from class: `FieldComparator`
Return the actual value in the slot.

Specified by:
  `value` in class `FieldComparator<Float>`
Parameters:
  `slot` - the value
Returns:
  value in this slot

#### compareDocToValue

    public int compareDocToValue(int doc,
                        Float valueObj)

Description copied from class: `FieldComparator`
Returns negative result if the doc's value is less than the provided value.

Specified by:
  `compareDocToValue` in class `FieldComparator<Float>`