Package org.springframework.format.number

# Class AbstractNumberFormatter

java.lang.Object
org.springframework.format.number.AbstractNumberFormatter

All Implemented Interfaces:
  `Formatter<Number>`, `Parser<Number>`, `Printer<Number>`

Direct Known Subclasses:
  `CurrencyStyleFormatter`, `NumberStyleFormatter`, `PercentStyleFormatter`

public abstract class AbstractNumberFormatter extends Object implements Formatter<Number>
Abstract formatter for Numbers, providing a `getNumberFormat(java.util.Locale)` template method.

Since:
  3.0
Author:
  Juergen Hoeller, Keith Donald

## Constructor Summary

Constructors
Constructor
Description
`AbstractNumberFormatter()`

## Method Summary

Modifier and Type
Method
Description
`protected abstract NumberFormat`
`getNumberFormat(Locale locale)`
Obtain a concrete NumberFormat for the specified locale.
`Number`
`parse(String text, Locale locale)`
Parse a text String to produce a T.
`String`
`print(Number number, Locale locale)`
Print the object of type T for display.
`void`
`setLenient(boolean lenient)`
Specify whether parsing is to be lenient.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### AbstractNumberFormatter

public AbstractNumberFormatter()

## Method Details

### setLenient

public void setLenient(boolean lenient)
Specify whether parsing is to be lenient. Default is `false`.

With lenient parsing, the parser may allow inputs that do not precisely match the format. With strict parsing, inputs must match the format exactly.

### print

public String print(Number number, Locale locale)
Description copied from interface: `Printer`
Print the object of type T for display.

Specified by:
  `print` in interface `Printer<Number>`
Parameters:
  `number` - the instance to print
  `locale` - the current user locale
Returns:
  the printed text string

### parse

public Number parse(String text, Locale locale) throws ParseException
Description copied from interface: `Parser`
Parse a text String to produce a T.

Specified by:
  `parse` in interface `Parser<Number>`
Parameters:
  `text` - the text string
  `locale` - the current user locale
Returns:
  an instance of T
Throws:
  `ParseException` - when a parse exception occurs in a java.text parsing library

### getNumberFormat

protected abstract NumberFormat getNumberFormat(Locale locale)
Obtain a concrete NumberFormat for the specified locale.

Parameters:
  `locale` - the current locale
Returns:
  the NumberFormat instance (never `null`)