Class QuantityFunctions

java.lang.Object
tech.units.indriya.function.QuantityFunctions

public final class QuantityFunctions extends Object
Since:
1.0
Version:
1.0
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    private
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    fiterByExcludingUnit(javax.measure.Unit<Q>... units)
    Predicate to filter excluding these units
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    fiterByUnit(javax.measure.Unit<Q>... units)
    Predicate to filter to one or more units
    static <Q extends javax.measure.Quantity<Q>>
    Function<javax.measure.Quantity<Q>,javax.measure.Unit<Q>>
     
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    isBetween(Number min, Number max)
    creates a Filter to between, lesser or equals and greater or equals, than number, ignoring units
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    isBetween(javax.measure.Quantity<Q> min, javax.measure.Quantity<Q> max)
    creates a filter to between, lesser or equals and greater or equals, than the quantity measure
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    creates a Filter to greater than number, ignoring units
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    isGreaterThan(javax.measure.Quantity<Q> quantity)
    creates a filter to greater than the quantity measure
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    creates a Filter to greater or equals than number, ignoring units
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    isGreaterThanOrEqualTo(javax.measure.Quantity<Q> quantity)
    creates a filter to greater or equals than the quantity measure
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    creates a Filter to lesser than number, ignoring units
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    isLesserThan(javax.measure.Quantity<Q> quantity)
    creates a filter to lesser than the quantity measure
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    creates a Filter to lesser or equals than number, ignoring units
    static <Q extends javax.measure.Quantity<Q>>
    Predicate<javax.measure.Quantity<Q>>
    isLesserThanOrEqualTo(javax.measure.Quantity<Q> quantity)
    creates a filter to lesser or equals than the quantity measure
    static <Q extends javax.measure.Quantity<Q>>
    BinaryOperator<javax.measure.Quantity<Q>>
    max()
    Creates a BinaryOperator to calculate the maximum Quantity
    static <Q extends javax.measure.Quantity<Q>>
    BinaryOperator<javax.measure.Quantity<Q>>
    min()
    Creates a BinaryOperator to calculate the minimum Quantity
    static <Q extends javax.measure.Quantity<Q>>
    Comparator<javax.measure.Quantity<Q>>
    Creates a comparator to sort by natural order, looking to both the unit and the value.
    static <Q extends javax.measure.Quantity<Q>>
    Comparator<javax.measure.Quantity<Q>>
    Creates a comparator to sort by natural order descending, looking to both the unit and the value.
    static <Q extends javax.measure.Quantity<Q>>
    Comparator<javax.measure.Quantity<Q>>
    Creates a comparator to sort by number, ignoring the unit.
    static <Q extends javax.measure.Quantity<Q>>
    Comparator<javax.measure.Quantity<Q>>
    Creates a comparator to sort by number descending, ignoring the unit.
    static <Q extends javax.measure.Quantity<Q>>
    Comparator<javax.measure.Quantity<Q>>
    Creates a comparator to sort by name, ignoring the value.
    static <Q extends javax.measure.Quantity<Q>>
    Comparator<javax.measure.Quantity<Q>>
    Creates a comparator to sort by name descending, ignoring the value.
    static <Q extends javax.measure.Quantity<Q>>
    BinaryOperator<javax.measure.Quantity<Q>>
    sum()
    Creates a BinaryOperator to sum.
    static <Q extends javax.measure.Quantity<Q>>
    BinaryOperator<javax.measure.Quantity<Q>>
    sum(javax.measure.Unit<Q> unit)
    Creates a BinaryOperator to sum converting to unit
    static <Q extends javax.measure.Quantity<Q>>
    Collector<javax.measure.Quantity<Q>,QuantitySummaryStatistics<Q>,QuantitySummaryStatistics<Q>>
    summarizeQuantity(javax.measure.Unit<Q> unit)
    Summary of Quantity

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • QuantityFunctions

      private QuantityFunctions()
  • Method Details

    • sortNumber

      public static <Q extends javax.measure.Quantity<Q>> Comparator<javax.measure.Quantity<Q>> sortNumber()
      Creates a comparator to sort by number, ignoring the unit.
      Returns:

      Given:

      Quantity

      will return: day, hours, minutes, seconds

      Throws:
      NullPointerException
    • sortNumberDesc

      public static <Q extends javax.measure.Quantity<Q>> Comparator<javax.measure.Quantity<Q>> sortNumberDesc()
      Creates a comparator to sort by number descending, ignoring the unit.
      Returns:

      Given:

      Quantity

      will return: seconds, hours, minutes, day

      Throws:
      NullPointerException
    • sortSymbol

      public static <Q extends javax.measure.Quantity<Q>> Comparator<javax.measure.Quantity<Q>> sortSymbol()
      Creates a comparator to sort by name, ignoring the value.
      Returns:

      Given:

      Quantity

      will return: day, hours, minutes, seconds

      Throws:
      NullPointerException
    • sortSymbolDesc

      public static <Q extends javax.measure.Quantity<Q>> Comparator<javax.measure.Quantity<Q>> sortSymbolDesc()
      Creates a comparator to sort by name descending, ignoring the value.
      Returns:

      Given:

      Quantity

      will return: seconds, minutes, hour, day

      Throws:
      NullPointerException
    • sortNatural

      public static <Q extends javax.measure.Quantity<Q>> Comparator<javax.measure.Quantity<Q>> sortNatural()
      Creates a comparator to sort by natural order, looking to both the unit and the value.
      Returns:

      Given:

      Quantity

      will return: seconds, minutes, hours, day

      Throws:
      NullPointerException
    • sortNaturalDesc

      public static <Q extends javax.measure.Quantity<Q>> Comparator<javax.measure.Quantity<Q>> sortNaturalDesc()
      Creates a comparator to sort by natural order descending, looking to both the unit and the value.
      Returns:

      Given:

      Quantity

      will return: day, hour, minute, second

      Throws:
      NullPointerException
    • min

      public static <Q extends javax.measure.Quantity<Q>> BinaryOperator<javax.measure.Quantity<Q>> min()
      Creates a BinaryOperator to calculate the minimum Quantity
      Returns:
      the min BinaryOperator, not null.
    • max

      public static <Q extends javax.measure.Quantity<Q>> BinaryOperator<javax.measure.Quantity<Q>> max()
      Creates a BinaryOperator to calculate the maximum Quantity
      Returns:
      the max BinaryOperator, not null.
    • sum

      public static <Q extends javax.measure.Quantity<Q>> BinaryOperator<javax.measure.Quantity<Q>> sum()
      Creates a BinaryOperator to sum.
      Returns:
      the sum BinaryOperator
    • sum

      public static <Q extends javax.measure.Quantity<Q>> BinaryOperator<javax.measure.Quantity<Q>> sum(javax.measure.Unit<Q> unit)
      Creates a BinaryOperator to sum converting to unit
      Parameters:
      unit - unit to be converting
      Returns:
      the sum BinaryOperator converting to unit
    • fiterByUnit

      @SafeVarargs public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> fiterByUnit(javax.measure.Unit<Q>... units)
      Predicate to filter to one or more units
      Parameters:
      units - - units to be filtered (optional)
      Returns:
      A predicate to filter one or more units
    • fiterByExcludingUnit

      @SafeVarargs public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> fiterByExcludingUnit(javax.measure.Unit<Q>... units)
      Predicate to filter excluding these units
      Parameters:
      units - - units to be filtered (optional)
      Returns:
      A predicate to filter to not be these units
    • isGreaterThan

      public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> isGreaterThan(Number value)
      creates a Filter to greater than number, ignoring units
      Parameters:
      value - - the value to be used in Predicate
      Returns:
      the Predicate greater than this number, ignoring units
    • isGreaterThan

      public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> isGreaterThan(javax.measure.Quantity<Q> quantity)
      creates a filter to greater than the quantity measure
      Parameters:
      quantity - - the measure to be used in filter
      Returns:
      the Predicate greater than this measure
    • isGreaterThanOrEqualTo

      public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> isGreaterThanOrEqualTo(Number value)
      creates a Filter to greater or equals than number, ignoring units
      Parameters:
      value - - the value to be used in Predicate
      Returns:
      the Predicate greater or equals than this number, ignoring units
    • isGreaterThanOrEqualTo

      public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> isGreaterThanOrEqualTo(javax.measure.Quantity<Q> quantity)
      creates a filter to greater or equals than the quantity measure
      Parameters:
      quantity - - the measure to be used in filter
      Returns:
      the Predicate greater or equals than this measure
    • isLesserThan

      public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> isLesserThan(Number value)
      creates a Filter to lesser than number, ignoring units
      Parameters:
      value - - the value to be used in Predicate
      Returns:
      the Predicate greater than this number, ignoring units
    • isLesserThan

      public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> isLesserThan(javax.measure.Quantity<Q> quantity)
      creates a filter to lesser than the quantity measure
      Parameters:
      quantity - - the measure to be used in filter
      Returns:
      the Predicate lesser than this measure
    • isLesserThanOrEqualTo

      public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> isLesserThanOrEqualTo(Number value)
      creates a Filter to lesser or equals than number, ignoring units
      Parameters:
      value - - the value to be used in Predicate
      Returns:
      the Predicate lesser or equals than this number, ignoring units
    • isLesserThanOrEqualTo

      public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> isLesserThanOrEqualTo(javax.measure.Quantity<Q> quantity)
      creates a filter to lesser or equals than the quantity measure
      Parameters:
      quantity - - the measure to be used in filter
      Returns:
      the Predicate lesser or equals than this measure
    • isBetween

      public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> isBetween(Number min, Number max)
      creates a Filter to between, lesser or equals and greater or equals, than number, ignoring units
      Parameters:
      min - - the min value to be used in Predicate
      max - - the max value to be used in Predicate
      Returns:
      the Predicate lesser or equals than this number, ignoring units
    • isBetween

      public static <Q extends javax.measure.Quantity<Q>> Predicate<javax.measure.Quantity<Q>> isBetween(javax.measure.Quantity<Q> min, javax.measure.Quantity<Q> max)
      creates a filter to between, lesser or equals and greater or equals, than the quantity measure
      Parameters:
      min - - the min value to be used in Predicate
      max - - the max value to be used in Predicate
      Returns:
      the Predicate lesser or equals than this measure
    • summarizeQuantity

      public static <Q extends javax.measure.Quantity<Q>> Collector<javax.measure.Quantity<Q>,QuantitySummaryStatistics<Q>,QuantitySummaryStatistics<Q>> summarizeQuantity(javax.measure.Unit<Q> unit)
      Summary of Quantity
      Returns:
      the QuantitySummaryStatistics
    • groupByUnit

      public static <Q extends javax.measure.Quantity<Q>> Function<javax.measure.Quantity<Q>,javax.measure.Unit<Q>> groupByUnit()