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 bothFractionFormat
andBigFractionFormat
.- Since:
- 2.0
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class java.text.NumberFormat
NumberFormat.Field
-
-
Field Summary
-
Fields inherited from class java.text.NumberFormat
FRACTION_FIELD, INTEGER_FIELD
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractFormat()
Create an improper formatting instance with the default number format for the numerator and denominator.protected
AbstractFormat(NumberFormat format)
Create an improper formatting instance with a custom number format for both the numerator and denominator.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.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description StringBuffer
format(double value, StringBuffer buffer, FieldPosition position)
Formats a double value as a fraction and appends the result to a StringBuffer.StringBuffer
format(long value, StringBuffer buffer, FieldPosition position)
Formats a long value as a fraction and appends the result to a StringBuffer.protected static NumberFormat
getDefaultNumberFormat()
Create a default number format.protected static NumberFormat
getDefaultNumberFormat(Locale locale)
Create a default number format.NumberFormat
getDenominatorFormat()
Access the denominator format.NumberFormat
getNumeratorFormat()
Access the numerator format.protected static void
parseAndIgnoreWhitespace(String source, ParsePosition pos)
Parsessource
until a non-whitespace character is found.protected static char
parseNextCharacter(String source, ParsePosition pos)
Parsessource
until a non-whitespace character is found.void
setDenominatorFormat(NumberFormat format)
Modify the denominator format.void
setNumeratorFormat(NumberFormat format)
Modify the numerator format.-
Methods inherited from class java.text.NumberFormat
clone, equals, format, format, format, getAvailableLocales, getCurrency, getCurrencyInstance, getCurrencyInstance, getInstance, getInstance, getIntegerInstance, getIntegerInstance, getMaximumFractionDigits, getMaximumIntegerDigits, getMinimumFractionDigits, getMinimumIntegerDigits, getNumberInstance, getNumberInstance, getPercentInstance, getPercentInstance, getRoundingMode, hashCode, isGroupingUsed, isParseIntegerOnly, parse, parse, parseObject, setCurrency, setGroupingUsed, setMaximumFractionDigits, setMaximumIntegerDigits, setMinimumFractionDigits, setMinimumIntegerDigits, setParseIntegerOnly, setRoundingMode
-
Methods inherited from class java.text.Format
format, formatToCharacterIterator, parseObject
-
-
-
-
Constructor Detail
-
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 Detail
-
getDefaultNumberFormat
protected static NumberFormat getDefaultNumberFormat()
Create a default number format. The default number format is based onNumberFormat.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 onNumberFormat.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
- ifformat
isnull
.
-
setNumeratorFormat
public void setNumeratorFormat(NumberFormat format)
Modify the numerator format.- Parameters:
format
- the new numerator format value.- Throws:
NullArgumentException
- ifformat
isnull
.
-
parseAndIgnoreWhitespace
protected static void parseAndIgnoreWhitespace(String source, ParsePosition pos)
Parsessource
until a non-whitespace character is found.- Parameters:
source
- the string to parsepos
- 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)
Parsessource
until a non-whitespace character is found.- Parameters:
source
- the string to parsepos
- 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 classNumberFormat
- Parameters:
value
- the double value to formatbuffer
- StringBuffer to append toposition
- On input: an alignment field, if desired. On output: the offsets of the alignment field- Returns:
- a reference to the appended buffer
- See Also:
NumberFormat.format(Object, StringBuffer, FieldPosition)
-
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 classNumberFormat
- Parameters:
value
- the long value to formatbuffer
- StringBuffer to append toposition
- On input: an alignment field, if desired. On output: the offsets of the alignment field- Returns:
- a reference to the appended buffer
- See Also:
NumberFormat.format(Object, StringBuffer, FieldPosition)
-
-