FloatComparator (Lucene 10.5.1 core API)
Description: declaration: package: org.apache.lucene.search.comparators, class: FloatComparator

Package org.apache.lucene.search.comparators

# Class FloatComparator

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

public class FloatComparator extends NumericComparator<Float>
Comparator based on `Float.compare(float, float)` for `numHits`. This comparator provides a skipping functionality – an iterator that can skip over non-competitive documents.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `class`
  `FloatComparator.FloatLeafComparator`
  Leaf comparator for `FloatComparator` that provides skipping functionality

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

  `NumericComparator.CompetitiveDISIBuilder, NumericComparator.NumericLeafComparator`

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

  `FieldComparator.RelevanceComparator, FieldComparator.TermValComparator`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected float`
  `bottom`
  `protected float`
  `topValue`

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

  `field, hitsThresholdReached, missingValue, pruning, queueFull, reverse, singleSort, topValueSet`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `FloatComparator(int numHits, String field, Float missingValue, boolean reverse, Pruning pruning)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `compare(int slot1, int slot2)`
  Compare hit at slot1 with hit at slot2.
  `LeafFieldComparator`
  `getLeafComparator(LeafReaderContext context)`
  Get a per-segment `LeafFieldComparator` to collect the given `LeafReaderContext`.
  `protected long`
  `missingValueAsComparableLong()`
  `void`
  `setTopValue(Float value)`
  Record the top value, for future calls to `LeafFieldComparator.compareTop(int)`.
  `protected long`
  `sortableBytesToLong(byte[] bytes)`
  Decode sortable bytes to long.
  `Float`
  `value(int slot)`
  Return the actual value in the slot.

  ### Methods inherited from class org.apache.lucene.search.comparators.NumericComparator

  `disableSkipping, setSingleSort`

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

  `compareValues`

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

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

- ## Field Details

  - ### topValue

    protected float topValue

  - ### bottom

    protected float bottom

- ## Constructor Details

  - ### FloatComparator

    public FloatComparator(int numHits, String field, Float missingValue, boolean reverse, Pruning pruning)

- ## Method Details

  - ### 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

  - ### setTopValue

    public void setTopValue(Float value)
    Description copied from class: `FieldComparator`
    Record the top value, for future calls to `LeafFieldComparator.compareTop(int)`. This is only called for searches that use searchAfter (deep paging), and is called before any calls to `FieldComparator.getLeafComparator(LeafReaderContext)`.
    Overrides:
      `setTopValue` in class `NumericComparator<Float>`

  - ### 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

  - ### missingValueAsComparableLong

    protected long missingValueAsComparableLong()
    Specified by:
      `missingValueAsComparableLong` in class `NumericComparator<Float>`

  - ### sortableBytesToLong

    protected long sortableBytesToLong(byte[] bytes)
    Description copied from class: `NumericComparator`
    Decode sortable bytes to long. It should be consistent with the codec that `PointValues` of this field is using.
    Specified by:
      `sortableBytesToLong` in class `NumericComparator<Float>`

  - ### getLeafComparator

    public LeafFieldComparator getLeafComparator(LeafReaderContext context) throws IOException
    Description copied from class: `FieldComparator`
    Get a per-segment `LeafFieldComparator` to collect the given `LeafReaderContext`. All docIDs supplied to this `LeafFieldComparator` are relative to the current reader (you must add docBase if you need to map it to a top-level docID).
    Specified by:
      `getLeafComparator` in class `FieldComparator<Float>`
    Parameters:
      `context` - current reader context
    Returns:
      the comparator to use for this segment
    Throws:
      `IOException` - if there is a low-level IO error