public class DecimalFormatter extends Object implements Serializable
DecimalFormatHandler
の実装クラスを内部で生成し、StandardDecimalFormatHandler
です。DecimalFormatHandler
の実装クラスを利用することも可能です。<decimal-format-config> <decimal-format id="sample" class="jp.co.intra_mart.foundation.i18n.number.format.StandardDecimalFormatHandler"> <parameter param-name="pattern" param-value="#,##0.###"/> <parameter param-name="locale" param-value="ja"/> <parameter param-name="decimal-separator" param-value="."/> <parameter param-name="grouping-separator" param-value=","/> </decimal-format> </decimal-format-config>このように記述した設定に対して、
DecimalFormatter formatter = DecimalFormatter.getInstance("sample");と実行することで、実装クラス
StandardDecimalFormatHandler
を内部に持つDecimalFormatter
のインスタンスを取得できます。コンストラクタと説明 |
---|
DecimalFormatter(Class<? extends DecimalFormatHandler> clazz,
Map<String,String> parameter)
コンストラクタ。
|
修飾子とタイプ | メソッドと説明 |
---|---|
String |
format(double number)
double をフォーマットして文字列を作成します。
|
String |
format(long number)
long をフォーマットして文字列を作成します。
|
String |
format(Object number)
数値をフォーマットして文字列を作成します。
|
static DecimalFormatter |
getAccountInstance()
現在のアカウントコンテキストに紐付くフォーマット情報を元に、このクラスのインスタンスを生成します。
|
static DecimalFormatter |
getInstance(String formatId)
フォーマットIDで指定されるフォーマット情報を元に、このクラスのインスタンスを生成します。
|
Number |
parse(String text)
文字列からテキストを解析して Number を生成します。
|
void |
setGroupingUsed(boolean newValue)
このフォーマットでグループ化を使用するかどうかを設定します。
|
void |
setMaximumFractionDigits(int newValue)
数値の小数部分の最大桁数を設定します。
|
void |
setMaximumIntegerDigits(int newValue)
数値の整数部分の最大桁数を設定します。
|
void |
setMinimumFractionDigits(int newValue)
数値の小数部分の最小桁数を設定します。
|
void |
setMinimumIntegerDigits(int newValue)
数値の整数部分の最小桁数を設定します。
|
void |
setParseBigDecimal(boolean newValue)
DecimalFormatter#parse(String)) メソッドが BigDecimal を返すかどうかを設定します。 |
void |
setRoundingMode(RoundingMode roundingMode)
この DecimalFormatter で使用される RoundingMode を設定します。
|
public DecimalFormatter(Class<? extends DecimalFormatHandler> clazz, Map<String,String> parameter)
clazz
- このインスタンスで利用する、DecimalFormatHandler
の実装クラスparameter
- DecimalFormatHandler
の実装クラスの初期化に利用するパラメータpublic static DecimalFormatter getAccountInstance()
public static DecimalFormatter getInstance(String formatId) throws I18nRuntimeException
SystemDecimalFormat.isAvailableFormat(String)
を利用してください。formatId
- フォーマットIDI18nRuntimeException
- フォーマットに記述されたクラスが存在しない、またはDecimalFormatHandlerを実装していない場合public String format(double number)
number
- フォーマットする doublepublic String format(long number)
number
- フォーマットする longpublic String format(Object number)
number
- フォーマットする数値public Number parse(String text)
text
- 解析される文字列public void setGroupingUsed(boolean newValue)
newValue
- グループ化を使用する場合は true、そうでない場合は falsepublic void setMaximumFractionDigits(int newValue)
newValue
- Number 小数部分の最大表示桁数。public void setMaximumIntegerDigits(int newValue)
newValue
- Number 整数部分の最大表示桁数。public void setMinimumFractionDigits(int newValue)
newValue
- Number 小数部分の最小表示桁数。public void setMinimumIntegerDigits(int newValue)
newValue
- Number 整数部分の最小表示桁数。public void setParseBigDecimal(boolean newValue)
DecimalFormatter#parse(String))
メソッドが BigDecimal を返すかどうかを設定します。newValue
- この解析メソッドがBigDecimalを返す場合はtrue、そうでない場合はfalsepublic void setRoundingMode(RoundingMode roundingMode)
roundingMode
- RoundingMode 使用される RoundingModeCopyright © 2012 NTT DATA INTRAMART CORPORATION