Package org.springframework.format.number

# Class NumberStyleFormatter

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

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

public class NumberStyleFormatter extends AbstractNumberFormatter
A general-purpose number formatter using NumberFormat's number style.

Delegates to `NumberFormat.getInstance(Locale)`. Configures BigDecimal parsing so there is no loss in precision. Allows configuration over the decimal number pattern. The `AbstractNumberFormatter.parse(String, Locale)` routine always returns a BigDecimal.

Since:
  4.2
Author:
  Keith Donald, Juergen Hoeller
See Also:
  - `setPattern(java.lang.String)`
  - `AbstractNumberFormatter.setLenient(boolean)`

## Constructor Summary

Constructors
Constructor
Description
`NumberStyleFormatter()`
Create a new NumberStyleFormatter without a pattern.
`NumberStyleFormatter(String pattern)`
Create a new NumberStyleFormatter with the specified pattern.

## Method Summary

Modifier and Type
Method
Description
`NumberFormat`
`getNumberFormat(Locale locale)`
Obtain a concrete NumberFormat for the specified locale.
`void`
`setPattern(String pattern)`
Specify the pattern to use to format number values.

### Methods inherited from class org.springframework.format.number.AbstractNumberFormatter

`parse, print, setLenient`

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

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

## Constructor Details

### NumberStyleFormatter

public NumberStyleFormatter()
Create a new NumberStyleFormatter without a pattern.

### NumberStyleFormatter

public NumberStyleFormatter(String pattern)
Create a new NumberStyleFormatter with the specified pattern.

Parameters:
  `pattern` - the format pattern
See Also:
  - `setPattern(java.lang.String)`

## Method Details

### setPattern

public void setPattern(String pattern)
Specify the pattern to use to format number values. If not specified, the default DecimalFormat pattern is used.

See Also:
  - `DecimalFormat.applyPattern(String)`

### getNumberFormat

public NumberFormat getNumberFormat(Locale locale)
Description copied from class: `AbstractNumberFormatter`
Obtain a concrete NumberFormat for the specified locale.

Specified by:
  `getNumberFormat` in class `AbstractNumberFormatter`
Parameters:
  `locale` - the current locale
Returns:
  the NumberFormat instance (never `null`)