Package org.apache.commons.math.fraction
Class ProperFractionFormat
- java.lang.Object
-
- java.text.Format
-
- java.text.NumberFormat
-
- org.apache.commons.math.fraction.AbstractFormat
-
- org.apache.commons.math.fraction.FractionFormat
-
- org.apache.commons.math.fraction.ProperFractionFormat
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
public class ProperFractionFormat extends FractionFormat
Formats a Fraction number in proper format. The number format for each of the whole number, numerator and, denominator can be configured.Minus signs are only allowed in the whole number part - i.e., "-3 1/2" is legitimate and denotes -7/2, but "-3 -1/2" is invalid and will result in a
ParseException
.- Since:
- 1.1
- Version:
- $Revision: 983921 $ $Date: 2010-08-10 12:46:06 +0200 (mar. 10 août 2010) $
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.apache.commons.math.fraction.AbstractFormat
denominatorFormat, numeratorFormat
-
-
Constructor Summary
Constructors Constructor Description ProperFractionFormat()
Create a proper formatting instance with the default number format for the whole, numerator, and denominator.ProperFractionFormat(java.text.NumberFormat format)
Create a proper formatting instance with a custom number format for the whole, numerator, and denominator.ProperFractionFormat(java.text.NumberFormat wholeFormat, java.text.NumberFormat numeratorFormat, java.text.NumberFormat denominatorFormat)
Create a proper formatting instance with a custom number format for each of the whole, numerator, and denominator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringBuffer
format(Fraction fraction, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
Formats aFraction
object to produce a string.java.text.NumberFormat
getWholeFormat()
Access the whole format.Fraction
parse(java.lang.String source, java.text.ParsePosition pos)
Parses a string to produce aFraction
object.void
setWholeFormat(java.text.NumberFormat format)
Modify the whole format.-
Methods inherited from class org.apache.commons.math.fraction.FractionFormat
format, formatFraction, getAvailableLocales, getDefaultNumberFormat, getImproperInstance, getImproperInstance, getProperInstance, getProperInstance, parse
-
Methods inherited from class org.apache.commons.math.fraction.AbstractFormat
format, format, getDefaultNumberFormat, getDenominatorFormat, getNumeratorFormat, parseAndIgnoreWhitespace, parseNextCharacter, setDenominatorFormat, setNumeratorFormat
-
Methods inherited from class java.text.NumberFormat
clone, equals, format, format, getCurrency, getCurrencyInstance, getCurrencyInstance, getInstance, getInstance, getIntegerInstance, getIntegerInstance, getMaximumFractionDigits, getMaximumIntegerDigits, getMinimumFractionDigits, getMinimumIntegerDigits, getNumberInstance, getNumberInstance, getPercentInstance, getPercentInstance, getRoundingMode, hashCode, isGroupingUsed, isParseIntegerOnly, parseObject, setCurrency, setGroupingUsed, setMaximumFractionDigits, setMaximumIntegerDigits, setMinimumFractionDigits, setMinimumIntegerDigits, setParseIntegerOnly, setRoundingMode
-
-
-
-
Constructor Detail
-
ProperFractionFormat
public ProperFractionFormat()
Create a proper formatting instance with the default number format for the whole, numerator, and denominator.
-
ProperFractionFormat
public ProperFractionFormat(java.text.NumberFormat format)
Create a proper formatting instance with a custom number format for the whole, numerator, and denominator.- Parameters:
format
- the custom format for the whole, numerator, and denominator.
-
ProperFractionFormat
public ProperFractionFormat(java.text.NumberFormat wholeFormat, java.text.NumberFormat numeratorFormat, java.text.NumberFormat denominatorFormat)
Create a proper formatting instance with a custom number format for each of the whole, numerator, and denominator.- Parameters:
wholeFormat
- the custom format for the whole.numeratorFormat
- the custom format for the numerator.denominatorFormat
- the custom format for the denominator.
-
-
Method Detail
-
format
public java.lang.StringBuffer format(Fraction fraction, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
Formats aFraction
object to produce a string. The fraction is output in proper format.- Overrides:
format
in classFractionFormat
- Parameters:
fraction
- the object to format.toAppendTo
- where the text is to be appendedpos
- On input: an alignment field, if desired. On output: the offsets of the alignment field- Returns:
- the value passed in as toAppendTo.
-
getWholeFormat
public java.text.NumberFormat getWholeFormat()
Access the whole format.- Returns:
- the whole format.
-
parse
public Fraction parse(java.lang.String source, java.text.ParsePosition pos)
Parses a string to produce aFraction
object. This method expects the string to be formatted as a proper fraction.Minus signs are only allowed in the whole number part - i.e., "-3 1/2" is legitimate and denotes -7/2, but "-3 -1/2" is invalid and will result in a
ParseException
.- Overrides:
parse
in classFractionFormat
- Parameters:
source
- the string to parsepos
- input/ouput parsing parameter.- Returns:
- the parsed
Fraction
object.
-
setWholeFormat
public void setWholeFormat(java.text.NumberFormat format)
Modify the whole format.- Parameters:
format
- The new whole format value.- Throws:
NullArgumentException
- ifformat
isnull
.
-
-