Class NumberSpaceQuantityFormat

    • Nested Class Summary

      • Nested classes/interfaces inherited from class java.text.Format

        java.text.Format.Field
    • Constructor Summary

      Constructors 
      Constructor Description
      NumberSpaceQuantityFormat​(java.text.NumberFormat numberFormat, javax.measure.format.UnitFormat unitFormat)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Appendable format​(javax.measure.Quantity<?> quantity, java.lang.Appendable dest)
      Formats the specified quantity into an Appendable.
      (package private) static int getFractionDigitsCount​(double d)  
      static NumberSpaceQuantityFormat getInstance()
      Returns the default format.
      static NumberSpaceQuantityFormat getInstance​(java.text.NumberFormat numberFormat, javax.measure.format.UnitFormat unitFormat)
      Returns the quantity format using the specified number format and unit format (the number and unit are separated by one space).
      static NumberSpaceQuantityFormat getInstance​(FormatBehavior style)
      Returns the culture invariant format based upon BigDecimal canonical format and the standard unit format.
      ComparableQuantity<?> parse​(java.lang.CharSequence csq)
      Parses a portion of the specified CharSequence from the specified position to produce an object.
      (package private) ComparableQuantity<?> parse​(java.lang.CharSequence csq, int index)
      Parses a portion of the specified CharSequence from the specified position to produce an object.
      ComparableQuantity<?> parse​(java.lang.CharSequence csq, java.text.ParsePosition cursor)
      Parses a portion of the specified CharSequence from the specified position to produce an object.
      • Methods inherited from class java.text.Format

        clone, format, formatToCharacterIterator, parseObject
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • numberFormat

        private final java.text.NumberFormat numberFormat
      • unitFormat

        private final javax.measure.format.UnitFormat unitFormat
    • Constructor Detail

      • NumberSpaceQuantityFormat

        NumberSpaceQuantityFormat​(java.text.NumberFormat numberFormat,
                                  javax.measure.format.UnitFormat unitFormat)
    • Method Detail

      • getFractionDigitsCount

        static int getFractionDigitsCount​(double d)
      • format

        public java.lang.Appendable format​(javax.measure.Quantity<?> quantity,
                                           java.lang.Appendable dest)
                                    throws java.io.IOException
        Description copied from class: AbstractQuantityFormat
        Formats the specified quantity into an Appendable.
        Specified by:
        format in interface QuantityFormat
        Specified by:
        format in class AbstractQuantityFormat
        Parameters:
        quantity - the quantity to format.
        dest - the appendable destination.
        Returns:
        the specified Appendable.
        Throws:
        java.io.IOException - if an I/O exception occurs.
      • parse

        public ComparableQuantity<?> parse​(java.lang.CharSequence csq,
                                           java.text.ParsePosition cursor)
                                    throws java.lang.IllegalArgumentException,
                                           javax.measure.format.ParserException
        Description copied from class: AbstractQuantityFormat
        Parses a portion of the specified CharSequence from the specified position to produce an object. If parsing succeeds, then the index of the cursor argument is updated to the index after the last character used.
        Specified by:
        parse in interface QuantityFormat
        Specified by:
        parse in class AbstractQuantityFormat
        Parameters:
        csq - the CharSequence to parse.
        cursor - the cursor holding the current parsing index.
        Returns:
        the object parsed from the specified character sub-sequence.
        Throws:
        java.lang.IllegalArgumentException - if any problem occurs while parsing the specified character sequence (e.g. illegal syntax).
        javax.measure.format.ParserException
      • parse

        ComparableQuantity<?> parse​(java.lang.CharSequence csq,
                                    int index)
                             throws java.lang.IllegalArgumentException,
                                    javax.measure.format.ParserException
        Description copied from class: AbstractQuantityFormat
        Parses a portion of the specified CharSequence from the specified position to produce an object. If parsing succeeds, then the index of the cursor argument is updated to the index after the last character used.
        Specified by:
        parse in class AbstractQuantityFormat
        Parameters:
        csq - the CharSequence to parse.
        index - the current parsing index.
        Returns:
        the object parsed from the specified character sub-sequence.
        Throws:
        java.lang.IllegalArgumentException - if any problem occurs while parsing the specified character sequence (e.g. illegal syntax).
        javax.measure.format.ParserException
      • parse

        public ComparableQuantity<?> parse​(java.lang.CharSequence csq)
                                    throws java.lang.IllegalArgumentException,
                                           javax.measure.format.ParserException
        Description copied from class: AbstractQuantityFormat
        Parses a portion of the specified CharSequence from the specified position to produce an object. If parsing succeeds, then the index of the cursor argument is updated to the index after the last character used.
        Specified by:
        parse in interface tech.uom.lib.common.function.Parser<java.lang.CharSequence,​ComparableQuantity>
        Specified by:
        parse in interface QuantityFormat
        Specified by:
        parse in class AbstractQuantityFormat
        Parameters:
        csq - the CharSequence to parse.
        Returns:
        the object parsed from the specified character sub-sequence.
        Throws:
        java.lang.IllegalArgumentException - if any problem occurs while parsing the specified character sequence (e.g. illegal syntax).
        javax.measure.format.ParserException
      • getInstance

        public static NumberSpaceQuantityFormat getInstance​(FormatBehavior style)
        Returns the culture invariant format based upon BigDecimal canonical format and the standard unit format. This format is not locale-sensitive and can be used for unambiguous electronic communication of quantities together with their units without loss of information. For example: "1.23456789 kg.m/s2" returns Quantities.getQuantity(new BigDecimal("1.23456789"), AbstractUnit.parse("kg.m/s2")));
        Parameters:
        style - the format style to apply.
        Returns:
        the desired format.
      • getInstance

        public static NumberSpaceQuantityFormat getInstance()
        Returns the default format.
        Returns:
        the desired format.
      • getInstance

        public static NumberSpaceQuantityFormat getInstance​(java.text.NumberFormat numberFormat,
                                                            javax.measure.format.UnitFormat unitFormat)
        Returns the quantity format using the specified number format and unit format (the number and unit are separated by one space).
        Parameters:
        numberFormat - the number format.
        unitFormat - the unit format.
        Returns:
        the corresponding format.