org.apache.commons.validator.routines
public class PercentValidator extends BigDecimalValidator
Percentage Validation and Conversion routines (java.math.BigDecimal
).
This is one implementation of a percent validator that has the following features:
java.math.BigDecimal
However any of the number validators can be used for percent validation.
For example, if you wanted a percent validator that converts to a
java.lang.Float
then you can simply instantiate an
FloatValidator
with the appropriate format type:
... = new FloatValidator(false, FloatValidator.PERCENT_FORMAT);
Pick the appropriate validator, depending on the type (i.e Float, Double or BigDecimal)
you want the percent converted to. Please note, it makes no sense to use
one of the validators that doesn't handle fractions (i.e. byte, short, integer, long
and BigInteger) since percentages are converted to fractions (i.e 50%
is
converted to 0.5
).
Since: Validator 1.3.0
Version: $Revision: 478334 $ $Date: 2006-11-22 21:31:54 +0000 (Wed, 22 Nov 2006) $
Field Summary | |
---|---|
static char | PERCENT_SYMBOL DecimalFormat's percent (thousand multiplier) symbol |
static BigDecimal | POINT_ZERO_ONE |
static PercentValidator | VALIDATOR |
Constructor Summary | |
---|---|
PercentValidator()
Construct a strict instance. | |
PercentValidator(boolean strict)
Construct an instance with the specified strict setting.
|
Method Summary | |
---|---|
static BigDecimalValidator | getInstance()
Return a singleton instance of this validator. |
protected Object | parse(String value, Format formatter) Parse the value with the specified This implementation is lenient whether the currency symbol is present or not. |
Parameters: strict true
if strict
Format
parsing should be used.
Returns: A singleton instance of the PercentValidator.
Parse the value with the specified Format
.
This implementation is lenient whether the currency symbol
is present or not. The default NumberFormat
behaviour is for the parsing to "fail" if the currency
symbol is missing. This method re-parses with a format
without the currency symbol if it fails initially.
Parameters: value The value to be parsed. formatter The Format to parse the value with.
Returns: The parsed value if valid or null
if invalid.