Class AbstractFormat

java.lang.Object
java.text.Format
java.text.NumberFormat
org.apache.commons.math3.fraction.AbstractFormat
All Implemented Interfaces:
Serializable, Cloneable
Direct Known Subclasses:
BigFractionFormat, FractionFormat

public abstract class AbstractFormat extends NumberFormat implements Serializable
Common part shared by both FractionFormat and BigFractionFormat.
Since:
2.0
See Also:
  • Constructor Details

    • AbstractFormat

      protected AbstractFormat()
      Create an improper formatting instance with the default number format for the numerator and denominator.
    • AbstractFormat

      protected AbstractFormat(NumberFormat format)
      Create an improper formatting instance with a custom number format for both the numerator and denominator.
      Parameters:
      format - the custom format for both the numerator and denominator.
    • AbstractFormat

      protected AbstractFormat(NumberFormat numeratorFormat, NumberFormat denominatorFormat)
      Create an improper formatting instance with a custom number format for the numerator and a custom number format for the denominator.
      Parameters:
      numeratorFormat - the custom format for the numerator.
      denominatorFormat - the custom format for the denominator.
  • Method Details

    • getDefaultNumberFormat

      protected static NumberFormat getDefaultNumberFormat()
      Create a default number format. The default number format is based on NumberFormat.getNumberInstance(java.util.Locale). The only customization is the maximum number of BigFraction digits, which is set to 0.
      Returns:
      the default number format.
    • getDefaultNumberFormat

      protected static NumberFormat getDefaultNumberFormat(Locale locale)
      Create a default number format. The default number format is based on NumberFormat.getNumberInstance(java.util.Locale). The only customization is the maximum number of BigFraction digits, which is set to 0.
      Parameters:
      locale - the specific locale used by the format.
      Returns:
      the default number format specific to the given locale.
    • getDenominatorFormat

      public NumberFormat getDenominatorFormat()
      Access the denominator format.
      Returns:
      the denominator format.
    • getNumeratorFormat

      public NumberFormat getNumeratorFormat()
      Access the numerator format.
      Returns:
      the numerator format.
    • setDenominatorFormat

      public void setDenominatorFormat(NumberFormat format)
      Modify the denominator format.
      Parameters:
      format - the new denominator format value.
      Throws:
      NullArgumentException - if format is null.
    • setNumeratorFormat

      public void setNumeratorFormat(NumberFormat format)
      Modify the numerator format.
      Parameters:
      format - the new numerator format value.
      Throws:
      NullArgumentException - if format is null.
    • parseAndIgnoreWhitespace

      protected static void parseAndIgnoreWhitespace(String source, ParsePosition pos)
      Parses source until a non-whitespace character is found.
      Parameters:
      source - the string to parse
      pos - input/output parsing parameter. On output, pos holds the index of the next non-whitespace character.
    • parseNextCharacter

      protected static char parseNextCharacter(String source, ParsePosition pos)
      Parses source until a non-whitespace character is found.
      Parameters:
      source - the string to parse
      pos - input/output parsing parameter.
      Returns:
      the first non-whitespace character.
    • format

      public StringBuffer format(double value, StringBuffer buffer, FieldPosition position)
      Formats a double value as a fraction and appends the result to a StringBuffer.
      Specified by:
      format in class NumberFormat
      Parameters:
      value - the double value to format
      buffer - StringBuffer to append to
      position - On input: an alignment field, if desired. On output: the offsets of the alignment field
      Returns:
      a reference to the appended buffer
      See Also:
    • format

      public StringBuffer format(long value, StringBuffer buffer, FieldPosition position)
      Formats a long value as a fraction and appends the result to a StringBuffer.
      Specified by:
      format in class NumberFormat
      Parameters:
      value - the long value to format
      buffer - StringBuffer to append to
      position - On input: an alignment field, if desired. On output: the offsets of the alignment field
      Returns:
      a reference to the appended buffer
      See Also: