Class SIQuantity

All Implemented Interfaces:
Serializable, Comparable<SIQuantity>, Additive<SIQuantity>, Scalable<SIQuantity>, Value<SIUnit,SIQuantity>

public class SIQuantity extends Quantity<SIQuantity,SIUnit>
SI quantity, with arbitrary SI unit. The class has as... methods such as asDuration(...), which will succeed if the SI unit of the quantity is a duration unit, i.e., 's'.

Copyright (c) 2025-2026 Delft University of Technology, Jaffalaan 5, 2628 BX Delft, the Netherlands. All rights reserved. See for project information https://djunits.org. The DJUNITS project is distributed under a three-clause BSD-style license.

Author:
Alexander Verbraeck
See Also:
  • Constructor Details

    • SIQuantity

      public SIQuantity(double value, SIUnit unit)
      Instantiate a SI quantity with a unit.
      Parameters:
      value - the value, expressed in the unit
      unit - the unit in which the value is expressed
    • SIQuantity

      public SIQuantity(double value, String abbreviation)
      Instantiate a SI quantity with a unit, expressed as a String.
      Parameters:
      value - the value, expressed in the unit
      abbreviation - the String abbreviation of the unit in which the value is expressed
    • SIQuantity

      public SIQuantity(SIQuantity value)
      Construct SI quantity.
      Parameters:
      value - Scalar from which to construct this instance
  • Method Details

    • instantiate

      public SIQuantity instantiate(double si)
      Description copied from class: Quantity
      Instantiate a quantity with an SI or base value.
      Specified by:
      instantiate in class Quantity<SIQuantity,SIUnit>
      Parameters:
      si - the value expressed in the base (SI) unit
      Returns:
      a quantity with the given SI-value and base (SI) unit
    • siUnit

      public SIUnit siUnit()
      Description copied from class: Quantity
      Return the SI unit of this quantity.
      Overrides:
      siUnit in class Quantity<SIQuantity,SIUnit>
      Returns:
      the SI unit of this quantity
    • valueOf

      public static SIQuantity valueOf(String text)
      Returns an SI quantity representation of a textual representation of a value with a unit. The String representation that can be parsed is the double value in the unit, followed by a localized or English abbreviation of the unit. Spaces are allowed, but not required, between the value and the unit.
      Parameters:
      text - the textual representation to parse into a SI
      Returns:
      the Scalar representation of the value in its unit
      Throws:
      IllegalArgumentException - when the text cannot be parsed
      NullPointerException - when the text argument is null
    • of

      public static SIQuantity of(double value, String unitString)
      Returns an SI quantity based on a value and the textual representation of the unit, which can be localized.
      Parameters:
      value - the value to use
      unitString - the textual representation of the unit
      Returns:
      the Scalar representation of the value in its unit
      Throws:
      IllegalArgumentException - when the unit cannot be parsed or is incorrect
      NullPointerException - when the unitString argument is null