- すべての実装されたインタフェース:
Serializable,Cloneable
public class DecimalFormat extends NumberFormat
DecimalFormatはNumberFormatの具象サブクラスであり、10進数の書式を設定します。 これには、西欧、アラビア、およびインド数字に対するサポートを含むさまざまな機能が用意されており、任意のロケールで数値の解析とフォーマットが実行できるよう設計されています。 また、整数(123)、固定小数値(123.4)、科学表記法(1.23E4)、パーセント(12%)、および通貨金額($123)などのさまざまな種類の数値もサポートしています。 これらはすべてローカライズができます。
デフォルトのロケールなどの特定のロケールのNumberFormatを取得するためには、getInstance()などのNumberFormatのファクトリ・メソッドの1つを呼び出します。 通常、NumberFormatファクトリ・メソッドはDecimalFormat以外のサブクラスを返す場合があるため、DecimalFormatコンストラクタを直接呼び出しません。 フォーマット・オブジェクトをカスタマイズする必要がある場合は、次のように実行します。
NumberFormat f = NumberFormat.getInstance(loc);
if (f instanceof DecimalFormat) {
((DecimalFormat) f).setDecimalSeparatorAlwaysShown(true);
}
DecimalFormatはパターンおよび記号のセットで構成されます。 パターンの設定はapplyPattern()を使用して直接行うか、またはAPIメソッドを使用して間接的に行います。 記号はDecimalFormatSymbolsオブジェクトに格納されます。 NumberFormatファクトリ・メソッドを使用している場合、パターンと記号はローカライズされたResourceBundleから読み込まれます。
パターン
DecimalFormatの構文を次に示します。
Pattern:
PositivePattern
PositivePattern ; NegativePattern
PositivePattern:
Prefixopt Number Suffixopt
NegativePattern:
Prefixopt Number Suffixopt
Prefix:
any Unicode characters except \uFFFE, \uFFFF, and special characters
Suffix:
any Unicode characters except \uFFFE, \uFFFF, and special characters
Number:
Integer Exponentopt
Integer . Fraction Exponentopt
Integer:
MinimumInteger
#
# Integer
# , Integer
MinimumInteger:
0
0 MinimumInteger
0 , MinimumInteger
Fraction:
MinimumFractionopt OptionalFractionopt
MinimumFraction:
0 MinimumFractionopt
OptionalFraction:
# OptionalFractionopt
Exponent:
E MinimumExponent
MinimumExponent:
0 MinimumExponentopt
DecimalFormatパターンには"#,##0.00;(#,##0.00)"などの、正と負のサブパターンがあります。 各サブパターンには接頭辞、数値部分、および接尾辞が1つずつあります。 負のサブパターンはオプションです。このオプションを設定しない場合は、ローカライズされたマイナス記号(ほとんどのロケールでは'-')を正のサブパターンに接頭辞として付けることで、負のサブパターンとして使用します。 つまり、単独の"0.00"は"0.00;-0.00"と等価になります。 明示的な負のサブパターンがあると、これは負の接頭辞と接尾辞を指定する場合にだけ機能します。桁数、最小桁数、およびその他の特性はすべて正のパターンと同じです。 これは"#,##0.0#;(#)"は"#,##0.0#;(#,##0.0#)"と正確に同じ結果になることを意味します。
接頭辞、接尾辞、および無限大、桁、1000の区切り、および小数の区切り文字などに使用するさまざまな記号は、任意の値に設定でき、フォーマット中に正しく表示されます。 ただし、記号と文字列が矛盾しないように注意をしないと、解析は信頼性を持ちません。 たとえば、DecimalFormat.parse()で正の値と負の値を区別できるように、正と負の接頭辞や接尾辞は異なる必要があります。 同一であると、DecimalFormatは負のサブパターンが指定されていないものとして動作します。 別の例として、数値桁区切り子と1000の区切り子には異なる文字を使用する必要があります。同一の文字を使用すると解析が不可能になります。
グループ区切り子は一般に1000ごとに区切るために使用しますが、国によっては10000ごとに使用するところもあります。 グループ区切りのサイズとは、100,000,000の場合は3、1,0000,0000の場合は4というように、グループ区切り文字間の一定の桁数です。 複数のグループ区切り文字を持つパターンを指定すると、最後の区切り文字と末尾の整数との間が、この間隔として使用されます。 したがって、"#,##,###,####" == "######,####" == "##,####,####"となります。
特殊パターン文字
パターン内の多くの文字は文字どおりに取得されます。このような文字は解析中に一致すると、フォーマット中にそのまま出力されます。 一方、特殊文字はほかの文字、文字列、または文字のクラスを表します。 特殊文字は、接頭辞や接尾辞にリテラルとして表示する場合は、特に指示がないかぎり、引用符で囲む必要があります。
次にリストする文字は、ローカライズされていないパターンで使用されます。 ローカライズされていないパターンでは、代わりにこのフォーマッタのDecimalFormatSymbolsオブジェクトから取得した対応する文字を使用すると、これらの文字は特殊な状態ではなくなります。 2つの例外はローカライズされていない通貨記号と引用符です。
記号 位置 ローカライズの有無 意味 0Number あり 数字 #Number あり 数字。ゼロだと表示されない .Number あり 数値桁区切り子または通貨桁区切り子 -Number あり マイナス記号 ,Number あり グループ区切り子 ENumber あり 科学表記法の仮数と指数を区切る。 接頭辞や接尾辞内に引用符を付ける必要はない。 ;サブパターン境界 あり 正と負のサブパターンを区切る %接頭辞または接尾辞 あり 100倍してパーセントを表す \u2030接頭辞または接尾辞 あり 1000倍してパーミル値を表す ¤(\u00A4)接頭辞または接尾辞 なし 通貨記号で置換される通貨符号。 2つの場合は、国際通貨記号で置換される。 パターン内にある場合は、数値桁区切り子ではなく、通貨桁区切り子が使用される。 '接頭辞または接尾辞 なし 接頭辞や接尾辞内の特殊文字を引用符で囲む場合に使用される。たとえば、 "'#'#"を使用すると123は"#123"にフォーマットされる。 単一引用符自体を作成するには、1行に2つ引用符を使用する("#o''clock")。
科学表記法
科学表記法の数値は仮数と10の累乗の結果として表されます。たとえば、1234は1.234 x 10^3として表されます。 仮数の多くは1.0 ≤ x < 10.0の範囲内ですが、必ずしもこの範囲内である必要はありません。 DecimalFormatには、パターンだけを介して科学表記法をフォーマットおよび解析するよう指示できます。現在、科学表記法形式を作成するファクトリ・メソッドはありません。 パターンでは、指数文字の直後に1つ以上の数字を続けて科学表記法を示します。 例:"0.###E0"では、1234は"1.234E3"のようにフォーマットされます。
- 指数文字の後ろの数字の個数は、指数の最小桁数を示します。 最大桁数はありません。 負の指数は、パターンによる接頭辞や接尾辞ではなく、ローカライズされたマイナス記号を使用してフォーマットされます。 これによって、
"0.###E0 m/s"などのパターンが許可されます。 - 整数の最小桁数と最大桁数は同時に解釈されます。
- 整数の最大桁数がその最小桁数より大きく、1より大きい場合、指数は整数の最大桁数の倍数になり、整数の最小桁数は1として解釈されます。 これは、技術表記法の場合によく使用されます。この場合、指数は
"##0.#####E0"などのように3の倍数になります。 このパターンを使用すると、数値12345は"12.345E3"に、123456は"123.456E3"にフォーマットされます。 - そうでない場合、整数の最小桁数は指数を調整することによって得られます。 例: 0.00123は
"00.###E0"を使用して"12.3E-4"とフォーマットされます。
- 整数の最大桁数がその最小桁数より大きく、1より大きい場合、指数は整数の最大桁数の倍数になり、整数の最小桁数は1として解釈されます。 これは、技術表記法の場合によく使用されます。この場合、指数は
- 仮数の有効桁数は、最小整数と最大小数の桁数の合計です。有効桁数は整数の最大桁数に影響を受けません。 たとえば、12345は
"##0.##E0"を使用して"12.3E3"とフォーマットされます。 すべての桁を表示する場合は、有効桁数をゼロに設定してください。 有効桁数は解析に影響しません。 - 指数パターンにはグループ区切り子が含まれない場合があります。
丸め
DecimalFormatは、RoundingModeで定義されている丸めモードをフォーマット処理に提供します。 デフォルトでは、RoundingMode.HALF_EVENが使用されます。
Digits
DecimalFormatは、フォーマットにDecimalFormatSymbolsオブジェクトで定義されている、ローカライズされたゼロ数字で始まる10個の連続した文字を数字として使用します。 解析では、これらの数字とともに、Character.digitの定義によるすべてのUnicode 10進数を認識します。
Special Values
NaNは文字列として書式設定され、通常、単一の文字\uFFFDがあります。 この文字列はDecimalFormatSymbolsオブジェクトによって判定されます。 これは、接頭辞と接尾辞が使用されない唯一の値です。
無限大は文字列として書式設定され、通常は1文字の\u221Eが含まれ、プレフィクスとして正または負のプレフィクスとサフィクスが適用されます。 無限大文字列はDecimalFormatSymbolsオブジェクトによって判定されます。
負のゼロ("-0")は、
isParseBigDecimal()がtrueである場合はBigDecimal(0)と解析され、isParseBigDecimal()がfalse、isParseIntegerOnly()がtrueである場合はLong(0)と解析され、isParseBigDecimal()とisParseIntegerOnly()がどちらもfalseである場合はDouble(-0.0)と解析されます。
Synchronization
decimalフォーマットは同期化されません。 スレッドごとに別のフォーマット・インスタンスを作成することをお薦めします。 複数のスレッドがフォーマットに並行してアクセスする場合は、外部的に同期化する必要があります。
例
<strong>// Print out a number using the localized number, integer, currency, // and percent format for each locale</strong> Locale[] locales = NumberFormat.getAvailableLocales(); double myNumber = -1234.56; NumberFormat form; for (int j = 0; j < 4; ++j) { System.out.println("FORMAT"); for (int i = 0; i < locales.length; ++i) { if (locales[i].getCountry().length() == 0) { continue; // Skip language-only locales } System.out.print(locales[i].getDisplayName()); switch (j) { case 0: form = NumberFormat.getInstance(locales[i]); break; case 1: form = NumberFormat.getIntegerInstance(locales[i]); break; case 2: form = NumberFormat.getCurrencyInstance(locales[i]); break; default: form = NumberFormat.getPercentInstance(locales[i]); break; } if (form instanceof DecimalFormat) { System.out.print(": " + ((DecimalFormat) form).toPattern()); } System.out.print(" -> " + form.format(myNumber)); try { System.out.println(" -> " + form.parse(form.format(myNumber))); } catch (ParseException e) {} } }
- 導入されたバージョン:
- 1.1
- 関連項目:
- Java Tutorial,
NumberFormat,DecimalFormatSymbols,ParsePosition, 直列化された形式
-
ネストされたクラスのサマリー
-
フィールドのサマリー
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 DecimalFormat()デフォルトのFORMATロケールに対して、デフォルトのパターンと記号を使ってDecimalFormatを作成します。DecimalFormat(String pattern)デフォルトのFORMATロケールに対して、指定されたパターンと記号を使ってDecimalFormatを作成します。DecimalFormat(String pattern, DecimalFormatSymbols symbols)指定されたパターンと記号を使ってDecimalFormatを作成します。 -
メソッドのサマリー
修飾子と型 メソッド 説明 voidapplyLocalizedPattern(String pattern)指定されたパターンをこのFormatオブジェクトに適用します。voidapplyPattern(String pattern)指定されたパターンをこのFormatオブジェクトに適用します。Objectclone()標準オーバーライドです。セマンティックスは変わりません。booleanequals(Object obj)equalsをオーバーライドします。StringBufferformat(double number, StringBuffer result, FieldPosition fieldPosition)doubleをフォーマットして文字列を作成します。StringBufferformat(long number, StringBuffer result, FieldPosition fieldPosition)longをフォーマットして文字列を作成します。StringBufferformat(Object number, StringBuffer toAppendTo, FieldPosition pos)数値をフォーマットし、その結果のテキストを指定された文字列バッファに追加します。AttributedCharacterIteratorformatToCharacterIterator(Object obj)Objectをフォーマットし、AttributedCharacterIteratorを生成します。CurrencygetCurrency()通貨値のフォーマット時に、この10進フォーマットが使用する通貨を取得します。DecimalFormatSymbolsgetDecimalFormatSymbols()数値桁区切り文字のコピーを返します。これは通常、プログラマやユーザーによって変更されません。intgetGroupingSize()グループ化サイズを返します。intgetMaximumFractionDigits()数値の小数部分の最大桁数を取得します。intgetMaximumIntegerDigits()数値の整数部分の最大桁数を取得します。intgetMinimumFractionDigits()数値の小数部分の最小桁数を取得します。intgetMinimumIntegerDigits()数値の整数部分の最小桁数を取得します。intgetMultiplier()パーセント、パーミル(1000)、およびその類似フォーマットで使用する乗数を取得します。StringgetNegativePrefix()負の接頭辞を取得します。StringgetNegativeSuffix()負の接尾辞を取得します。StringgetPositivePrefix()正の接頭辞を取得します。StringgetPositiveSuffix()正の接尾辞を取得します。RoundingModegetRoundingMode()このDecimalFormatで使用されるRoundingModeを取得します。inthashCode()hashCodeをオーバーライドします。booleanisDecimalSeparatorAlwaysShown()整数と区別する小数点の動作を取得します。booleanisParseBigDecimal()parse(java.lang.String, java.text.ParsePosition)メソッドがBigDecimalを返すかどうかを返します。Numberparse(String text, ParsePosition pos)文字列からテキストを解析してNumberを生成します。voidsetCurrency(Currency currency)通貨値のフォーマット時に、この数値フォーマットが使用する通貨を設定します。voidsetDecimalFormatSymbols(DecimalFormatSymbols newSymbols)数値桁区切り文字を設定します。これは通常、プログラマやユーザーによって変更されません。voidsetDecimalSeparatorAlwaysShown(boolean newValue)整数と区別する小数点の動作を設定します。voidsetGroupingSize(int newValue)グループ化サイズを設定します。voidsetMaximumFractionDigits(int newValue)数値の小数部分の最大桁数を設定します。voidsetMaximumIntegerDigits(int newValue)数値の整数部分の最大桁数を設定します。voidsetMinimumFractionDigits(int newValue)数値の小数部分の最小桁数を設定します。voidsetMinimumIntegerDigits(int newValue)数値の整数部分の最小桁数を設定します。voidsetMultiplier(int newValue)パーセント、パーミル(1000)、およびその類似フォーマットで使用する乗数を設定します。voidsetNegativePrefix(String newValue)負の接頭辞を設定します。voidsetNegativeSuffix(String newValue)負の接尾辞を設定します。voidsetParseBigDecimal(boolean newValue)parse(java.lang.String, java.text.ParsePosition)メソッドがBigDecimalを返すかどうかを設定します。voidsetPositivePrefix(String newValue)正の接頭辞を設定します。voidsetPositiveSuffix(String newValue)正の接尾辞を設定します。voidsetRoundingMode(RoundingMode roundingMode)このDecimalFormatで使用されるRoundingModeを設定します。StringtoLocalizedPattern()このFormatオブジェクトの現在の状態を表すローカライズされたパターン文字列を総合します。StringtoPattern()このFormatオブジェクトの現在の状態を表すパターン文字列を総合します。クラス java.text.NumberFormatで宣言されたメソッド
format, format, getAvailableLocales, getCompactNumberInstance, getCompactNumberInstance, getCurrencyInstance, getCurrencyInstance, getInstance, getInstance, getIntegerInstance, getIntegerInstance, getNumberInstance, getNumberInstance, getPercentInstance, getPercentInstance, isGroupingUsed, isParseIntegerOnly, parse, parseObject, setGroupingUsed, setParseIntegerOnly
-
コンストラクタの詳細
-
DecimalFormat
public DecimalFormat()デフォルトのFORMATロケールに対して、デフォルトのパターンと記号を使ってDecimalFormatを作成します。 これは、国際化が主要な問題でない場合は、DecimalFormatを得るためには簡単な方法です。指定されたロケールに対する標準フォーマットを得るには、getNumberInstanceなど、NumberFormatのファクトリ・メソッドを使用してください。 これらのファクトリ・メソッドは、指定されたロケールに対するNumberFormatの最適なサブクラスを返します。
-
DecimalFormat
public DecimalFormat(String pattern)デフォルトのFORMATロケールに対して、指定されたパターンと記号を使ってDecimalFormatを作成します。 これは、国際化が主要な問題でない場合は、DecimalFormatを得るためには簡単な方法です。指定されたロケールに対する標準フォーマットを得るには、getNumberInstanceなど、NumberFormatのファクトリ・メソッドを使用してください。 これらのファクトリ・メソッドは、指定されたロケールに対するNumberFormatの最適なサブクラスを返します。
- パラメータ:
pattern- ローカライズされていないパターン文字列。- 例外:
NullPointerException-patternがnullである場合IllegalArgumentException- 指定されたパターンが無効な場合。- 関連項目:
NumberFormat.getInstance(),NumberFormat.getNumberInstance(),NumberFormat.getCurrencyInstance(),NumberFormat.getPercentInstance()
-
DecimalFormat
public DecimalFormat(String pattern, DecimalFormatSymbols symbols)指定されたパターンと記号を使ってDecimalFormatを作成します。 フォーマットの動作を完全にカスタマイズする必要がある場合には、このコンストラクタを使ってください。指定されたロケールに対する標準フォーマットを得るには、getInstanceやgetCurrencyInstanceなど、NumberFormatのファクトリ・メソッドを使用してください。 標準フォーマットをわずかに調整するだけであれば、NumberFormatファクトリ・メソッドで返されたフォーマットを修正することができます。
- パラメータ:
pattern- ローカライズされていないパターン文字列symbols- 使用する記号セット- 例外:
NullPointerException- 指定された引数が1つでもnullの場合IllegalArgumentException- 指定されたパターンが無効な場合- 関連項目:
NumberFormat.getInstance(),NumberFormat.getNumberInstance(),NumberFormat.getCurrencyInstance(),NumberFormat.getPercentInstance(),DecimalFormatSymbols
-
-
メソッドの詳細
-
format
public final StringBuffer format(Object number, StringBuffer toAppendTo, FieldPosition pos)- オーバーライド:
format、クラス:NumberFormat- パラメータ:
number- フォーマットする数値toAppendTo- フォーマット後のテキストを追加するStringBufferpos- 返された文字列内のフィールドの位置を追跡します。 たとえば、Locale.USロケールの番号1234567.89をフォーマットする場合、指定されたfieldPositionがNumberFormat.INTEGER_FIELDである場合、fieldPositionのbeginインデックスとendインデックスは、それぞれ出力文字列1,234,567.89に対して0と9に設定されます。- 戻り値:
toAppendToとして渡された値- 例外:
IllegalArgumentException-numberがnullであるか、Numberのインスタンスでない場合。NullPointerException-toAppendToまたはposがnullの場合ArithmeticException- 丸め処理が必要な場合に丸めモードがRoundingMode.UNNECESSARYに設定されているとき- 関連項目:
FieldPosition
-
format
public StringBuffer format(double number, StringBuffer result, FieldPosition fieldPosition)doubleをフォーマットして文字列を作成します。- 定義:
format、クラス:NumberFormat- パラメータ:
number- フォーマットするdoubleresult- テキストを追加する位置fieldPosition- 返された文字列内のフィールドの位置を追跡します。 たとえば、Locale.USロケールの番号1234567.89をフォーマットする場合、指定されたfieldPositionがNumberFormat.INTEGER_FIELDである場合、fieldPositionのbeginインデックスとendインデックスは、それぞれ出力文字列1,234,567.89に対して0と9に設定されます。- 戻り値:
- フォーマットされた数値文字列
- 例外:
NullPointerException-resultまたはfieldPositionがnullの場合ArithmeticException- 丸め処理が必要な場合に丸めモードがRoundingMode.UNNECESSARYに設定されているとき- 関連項目:
FieldPosition
-
format
public StringBuffer format(long number, StringBuffer result, FieldPosition fieldPosition)longをフォーマットして文字列を作成します。- 定義:
format、クラス:NumberFormat- パラメータ:
number- フォーマットするlongresult- テキストを追加する位置fieldPosition- 返された文字列内のフィールドの位置を追跡します。 たとえば、Locale.USロケールの番号123456789をフォーマットする場合、指定されたfieldPositionがNumberFormat.INTEGER_FIELDである場合、fieldPositionのbeginインデックスとendインデックスは、それぞれ出力文字列123,456,789に対して0と11に設定されます。- 戻り値:
- フォーマットされた数値文字列
- 例外:
NullPointerException-resultまたはfieldPositionがnullの場合ArithmeticException- 丸め処理が必要な場合に丸めモードがRoundingMode.UNNECESSARYに設定されているとき- 関連項目:
FieldPosition
-
formatToCharacterIterator
public AttributedCharacterIterator formatToCharacterIterator(Object obj)Objectをフォーマットし、AttributedCharacterIteratorを生成します。 返されたAttributedCharacterIteratorを使用すると、結果のStringを構築できるとともに、結果のStringについての情報を判定できます。AttributedCharacterIteratorの各属性キーは
NumberFormat.Field型です。属性値は属性キーと同一です。- オーバーライド:
formatToCharacterIterator、クラス:Format- パラメータ:
obj- フォーマットするオブジェクト- 戻り値:
- フォーマットされた値を説明するAttributedCharacterIterator。
- 例外:
NullPointerException- objがnullの場合。IllegalArgumentException- 指定されたオブジェクトをFormatでフォーマットできない場合。ArithmeticException- 丸め処理が必要な場合に丸めモードがRoundingMode.UNNECESSARYに設定されているとき- 導入されたバージョン:
- 1.4
-
parse
public Number parse(String text, ParsePosition pos)文字列からテキストを解析してNumberを生成します。メソッドは
posによって指定されたインデックスを開始位置としてテキストの解析を試みます。 解析が完了すると、posのインデックスは、使用された最後の文字(解析では、文字列の最後までのすべての文字が使用されるとは限らない)のあとのインデックスに更新され、解析された数値が返されます。 更新されたposは、このメソッドの次の呼出しの開始点を示すのに使用できます。 エラーが発生した場合は、posのインデックスは変更されず、エラーが発生した文字のインデックスにposのエラー・インデックスが設定され、nullが返されます。戻り値のサブクラスは、
isParseBigDecimal()の値と解析対象文字列によって決まります。isParseBigDecimal()がfalse (デフォルト値)の場合、整数値の大部分は、その記述形式にかかわらず、Longオブジェクトとして返されます。"17"と"17.000"はどちらも、Long(17)として解析されます。Longに当てはまらない値はDoubleとして返されます。 これには小数部分を持つ値、無限大の値、NaN、および値 -0.0などが含まれます。DecimalFormatは、Double、Longのいずれを返すかを、ソース文字列内での小数区切り文字の有無で判断するわけではありません。 かりにそうした場合は、"-9,223,372,036,854,775,808.00"などのdoubleの仮数をオーバーフローする整数を、正確に解析できなくなります。呼出し元は、
NumberのメソッドdoubleValueやlongValueを用いることで、値を必要な型として取得できます。isParseBigDecimal()がtrueの場合、値はBigDecimalオブジェクトとして返されます。 値は、ロケールに依存しない形式の対応する文字列に対してBigDecimal(String)によって構築された値です。 ただし、特殊な値(正負の無限大やNaNなど)は、対応するDouble定数値を含むDoubleインスタンスとして返されます。
DecimalFormatは、Character.digit()で定義されている10進数字を表すすべてのUnicode文字を解析します。 さらにDecimalFormatは、DecimalFormatSymbolsオブジェクトで定義されているローカライズされたゼロ数字で始まる10個の連続した文字を数字として認識します。- 定義:
parse、クラス:NumberFormat- パラメータ:
text- 解析される文字列pos- 上記のインデックスおよびエラー・インデックス情報を持つParsePositionオブジェクト- 戻り値:
- 解析された値。解析が失敗した場合は
null - 例外:
NullPointerException-textまたはposがnullの場合。- 関連項目:
NumberFormat.isParseIntegerOnly(),Format.parseObject(java.lang.String, java.text.ParsePosition)
-
getDecimalFormatSymbols
public DecimalFormatSymbols getDecimalFormatSymbols()数値桁区切り文字のコピーを返します。これは通常、プログラマやユーザーによって変更されません。- 戻り値:
- 必要なDecimalFormatSymbolsのコピー
- 関連項目:
DecimalFormatSymbols
-
setDecimalFormatSymbols
public void setDecimalFormatSymbols(DecimalFormatSymbols newSymbols)数値桁区切り文字を設定します。これは通常、プログラマやユーザーによって変更されません。- パラメータ:
newSymbols- 必要なDecimalFormatSymbols- 関連項目:
DecimalFormatSymbols
-
getPositivePrefix
public String getPositivePrefix()正の接頭辞を取得します。例+123、$123、sFr123
- 戻り値:
- 正の接頭辞
-
setPositivePrefix
public void setPositivePrefix(String newValue)正の接頭辞を設定します。例+123、$123、sFr123
- パラメータ:
newValue- 新しい正の接頭辞
-
getNegativePrefix
public String getNegativePrefix()負の接頭辞を取得します。例-123、($123)(負の接尾辞付き)、sFr-123
- 戻り値:
- 負の接頭辞
-
setNegativePrefix
public void setNegativePrefix(String newValue)負の接頭辞を設定します。例-123、($123)(負の接尾辞付き)、sFr-123
- パラメータ:
newValue- 新しい負の接頭辞
-
getPositiveSuffix
public String getPositiveSuffix()正の接尾辞を取得します。例: 123%
- 戻り値:
- 正の接尾辞
-
setPositiveSuffix
public void setPositiveSuffix(String newValue)正の接尾辞を設定します。例: 123%
- パラメータ:
newValue- 新しい正の接尾辞
-
getNegativeSuffix
public String getNegativeSuffix()負の接尾辞を取得します。例-123%、($123)(正の接尾辞付き)
- 戻り値:
- 負の接尾辞
-
setNegativeSuffix
public void setNegativeSuffix(String newValue)負の接尾辞を設定します。例123%
- パラメータ:
newValue- 新しい負の接尾辞
-
getMultiplier
public int getMultiplier()パーセント、パーミル(1000)、およびその類似フォーマットで使用する乗数を取得します。- 戻り値:
- 乗数
- 関連項目:
setMultiplier(int)
-
setMultiplier
public void setMultiplier(int newValue)パーセント、パーミル(1000)、およびその類似フォーマットで使用する乗数を設定します。 パーセントでは、乗数として100を、接尾辞として%を設定します(アラビア語では異なるパーセント記号を使用する)。 パーミルでは、乗数として1000を、接尾辞として'\u2030'を設定します。例: 乗数100の場合、1.23のフォーマット結果は"123"、"123"の解析結果は1.23になる。
- パラメータ:
newValue- 新しい乗数- 関連項目:
getMultiplier()
-
getGroupingSize
public int getGroupingSize()グループ化サイズを返します。 グループ化サイズとは、数値の整数部分における区切り文字と区切り文字の間の桁数です。 たとえば、数値123,456.78の場合、グループ化サイズは3です。- 戻り値:
- グループ化サイズ
- 関連項目:
setGroupingSize(int),NumberFormat.isGroupingUsed(),DecimalFormatSymbols.getGroupingSeparator()
-
setGroupingSize
public void setGroupingSize(int newValue)グループ化サイズを設定します。 グループ化サイズとは、数値の整数部分における区切り文字と区切り文字の間の桁数です。 たとえば、数値123,456.78の場合、グループ化サイズは3です。
引数として渡された値はバイトに変換されるため、情報が失われる可能性があります。- パラメータ:
newValue- 新しいグループ化サイズ- 関連項目:
getGroupingSize(),NumberFormat.setGroupingUsed(boolean),DecimalFormatSymbols.setGroupingSeparator(char)
-
isDecimalSeparatorAlwaysShown
public boolean isDecimalSeparatorAlwaysShown()整数と区別する小数点の動作を取得します。 (小数位では小数点が常に表示される)。例: Decimal ON: 12345 → 12345.; OFF: 12345 → 12345
- 戻り値:
- 小数点区切り記号が常に表示される場合は
true、そうでない場合はfalse
-
setDecimalSeparatorAlwaysShown
public void setDecimalSeparatorAlwaysShown(boolean newValue)整数と区別する小数点の動作を設定します。 (小数位では小数点が常に表示される)。例: Decimal ON: 12345 → 12345.; OFF: 12345 → 12345
- パラメータ:
newValue- 小数点区切り記号が常に表示される場合はtrue、そうでない場合はfalse
-
isParseBigDecimal
public boolean isParseBigDecimal()parse(java.lang.String, java.text.ParsePosition)メソッドがBigDecimalを返すかどうかを返します。 デフォルト値はfalseです。- 戻り値:
- この解析メソッドがBigDecimalを返す場合は
true、そうでない場合はfalse - 導入されたバージョン:
- 1.5
- 関連項目:
setParseBigDecimal(boolean)
-
setParseBigDecimal
public void setParseBigDecimal(boolean newValue)parse(java.lang.String, java.text.ParsePosition)メソッドがBigDecimalを返すかどうかを設定します。- パラメータ:
newValue- この解析メソッドがBigDecimalを返す場合はtrue、そうでない場合はfalse- 導入されたバージョン:
- 1.5
- 関連項目:
isParseBigDecimal()
-
clone
public Object clone()標準オーバーライドです。セマンティックスは変わりません。- オーバーライド:
clone、クラス:NumberFormat- 戻り値:
- このインスタンスの複製。
- 関連項目:
Cloneable
-
equals
public boolean equals(Object obj)equalsをオーバーライドします。- オーバーライド:
equals、クラス:NumberFormat- パラメータ:
obj- 比較対象の参照オブジェクト。- 戻り値:
- このオブジェクトがobj引数と同じである場合は
true、それ以外の場合はfalse。 - 関連項目:
Object.hashCode()、HashMap
-
hashCode
public int hashCode()hashCodeをオーバーライドします。- オーバーライド:
hashCode、クラス:NumberFormat- 戻り値:
- このオブジェクトのハッシュ・コード値。
- 関連項目:
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
-
toPattern
public String toPattern()このFormatオブジェクトの現在の状態を表すパターン文字列を総合します。- 戻り値:
- パターン文字列
- 関連項目:
applyPattern(java.lang.String)
-
toLocalizedPattern
public String toLocalizedPattern()このFormatオブジェクトの現在の状態を表すローカライズされたパターン文字列を総合します。- 戻り値:
- ローカライズされたパターン文字
- 関連項目:
applyPattern(java.lang.String)
-
applyPattern
public void applyPattern(String pattern)指定されたパターンをこのFormatオブジェクトに適用します。 パターンとは、各種のフォーマット特性に対する簡略仕様です。 これらの特性は、各設定機能メソッドで個別に変更することもできます。このルーチンで設定される整数の桁数に制限はありません。これは、一般なエンド・ユーザーの要望であるためです。実際の値を設定したい場合は、setMaximumIntegerを使用してください。 負の数値の場合は、セミコロンで区切った2つめのパターンを使用します。
例
"#,#00.0#"→ 1,234.56これは、最小2桁の整数、1つの小数点、最大2桁の小数を意味します。
例:
"#,#00.0#;(#,#00.0#)"(負の数値は括弧で囲む)。負のパターンでは、最小と最大の桁数は無視されます。これらは、正のパターンで設定されるものと見なされます。
- パラメータ:
pattern- 新しいパターン- 例外:
NullPointerException-patternがnullである場合IllegalArgumentException- 指定されたパターンが無効な場合。
-
applyLocalizedPattern
public void applyLocalizedPattern(String pattern)指定されたパターンをこのFormatオブジェクトに適用します。 このパターンの表記は、ローカライズされているものと見なされます。 パターンとは、各種のフォーマット特性に対する簡略仕様です。 これらの特性は、各設定機能メソッドで個別に変更することもできます。このルーチンで設定される整数の桁数に制限はありません。これは、一般なエンド・ユーザーの要望であるためです。実際の値を設定したい場合は、setMaximumIntegerを使用してください。 負の数値の場合は、セミコロンで区切った2つめのパターンを使用します。
例
"#,#00.0#"→ 1,234.56これは、最小2桁の整数、1つの小数点、最大2桁の小数を意味します。
例:
"#,#00.0#;(#,#00.0#)"(負の数値は括弧で囲む)。負のパターンでは、最小と最大の桁数は無視されます。これらは、正のパターンで設定されるものと見なされます。
- パラメータ:
pattern- 新しいパターン- 例外:
NullPointerException-patternがnullである場合IllegalArgumentException- 指定されたパターンが無効な場合。
-
setMaximumIntegerDigits
public void setMaximumIntegerDigits(int newValue)数値の整数部分の最大桁数を設定します。BigIntegerオブジェクトおよびBigDecimalオブジェクト以外の数値をフォーマットする場合、newValueと309のうちの小さいほうが使用されます。 負の入力値は0に置き換えられます。- オーバーライド:
setMaximumIntegerDigits、クラス:NumberFormat- パラメータ:
newValue- 整数の最大表示桁数。0より小さい場合は0が使用される。 具象サブクラスでは、この値の上限を、フォーマットされる数値の種類に適した値に強制できる。- 関連項目:
NumberFormat.setMaximumIntegerDigits(int)
-
setMinimumIntegerDigits
public void setMinimumIntegerDigits(int newValue)数値の整数部分の最小桁数を設定します。BigIntegerオブジェクトおよびBigDecimalオブジェクト以外の数値をフォーマットする場合、newValueと309のうちの小さいほうが使用されます。 負の入力値は0に置き換えられます。- オーバーライド:
setMinimumIntegerDigits、クラス:NumberFormat- パラメータ:
newValue- 整数の最小表示桁数。0より小さい場合は0が使用される。 具象サブクラスでは、この値の上限を、フォーマットされる数値の種類に適した値に強制できる。- 関連項目:
NumberFormat.setMinimumIntegerDigits(int)
-
setMaximumFractionDigits
public void setMaximumFractionDigits(int newValue)数値の小数部分の最大桁数を設定します。BigIntegerオブジェクトおよびBigDecimalオブジェクト以外の数値をフォーマットする場合、newValueと340のうちの小さいほうが使用されます。 負の入力値は0に置き換えられます。- オーバーライド:
setMaximumFractionDigits、クラス:NumberFormat- パラメータ:
newValue- 小数部の最大表示桁数。0より小さい場合は0が使用される。 具象サブクラスでは、この値の上限を、フォーマットされる数値の種類に適した値に強制できる。- 関連項目:
NumberFormat.setMaximumFractionDigits(int)
-
setMinimumFractionDigits
public void setMinimumFractionDigits(int newValue)数値の小数部分の最小桁数を設定します。BigIntegerオブジェクトおよびBigDecimalオブジェクト以外の数値をフォーマットする場合、newValueと340のうちの小さいほうが使用されます。 負の入力値は0に置き換えられます。- オーバーライド:
setMinimumFractionDigits、クラス:NumberFormat- パラメータ:
newValue- 小数部の最小表示桁数。0より小さい場合は0が使用される。 具象サブクラスでは、この値の上限を、フォーマットされる数値の種類に適した値に強制できる。- 関連項目:
NumberFormat.setMinimumFractionDigits(int)
-
getMaximumIntegerDigits
public int getMaximumIntegerDigits()数値の整数部分の最大桁数を取得します。BigIntegerオブジェクトおよびBigDecimalオブジェクト以外の数値をフォーマットする場合、この戻り値と309のうちの小さいほうが使用されます。- オーバーライド:
getMaximumIntegerDigits、クラス:NumberFormat- 戻り値:
- 最大桁数
- 関連項目:
setMaximumIntegerDigits(int)
-
getMinimumIntegerDigits
public int getMinimumIntegerDigits()数値の整数部分の最小桁数を取得します。BigIntegerオブジェクトおよびBigDecimalオブジェクト以外の数値をフォーマットする場合、この戻り値と309のうちの小さいほうが使用されます。- オーバーライド:
getMinimumIntegerDigits、クラス:NumberFormat- 戻り値:
- 最小桁数
- 関連項目:
setMinimumIntegerDigits(int)
-
getMaximumFractionDigits
public int getMaximumFractionDigits()数値の小数部分の最大桁数を取得します。BigIntegerオブジェクトおよびBigDecimalオブジェクト以外の数値をフォーマットする場合、この戻り値と340のうちの小さいほうが使用されます。- オーバーライド:
getMaximumFractionDigits、クラス:NumberFormat- 戻り値:
- 最大桁数。
- 関連項目:
setMaximumFractionDigits(int)
-
getMinimumFractionDigits
public int getMinimumFractionDigits()数値の小数部分の最小桁数を取得します。BigIntegerオブジェクトおよびBigDecimalオブジェクト以外の数値をフォーマットする場合、この戻り値と340のうちの小さいほうが使用されます。- オーバーライド:
getMinimumFractionDigits、クラス:NumberFormat- 戻り値:
- 最小桁数
- 関連項目:
setMinimumFractionDigits(int)
-
getCurrency
public Currency getCurrency()通貨値のフォーマット時に、この10進フォーマットが使用する通貨を取得します。 この通貨は、この数値フォーマットの記号に対してDecimalFormatSymbols.getCurrencyを呼び出すことで取得されます。- オーバーライド:
getCurrency、クラス:NumberFormat- 戻り値:
- この10進フォーマットで使用される通貨、または
null - 導入されたバージョン:
- 1.4
-
setCurrency
public void setCurrency(Currency currency)通貨値のフォーマット時に、この数値フォーマットが使用する通貨を設定します。 これは、数値フォーマットが使用する最小小数桁数または最大小数桁数を更新するものではありません。 この通貨は、この数値フォーマットの記号に対してDecimalFormatSymbols.setCurrencyを呼び出すことで設定されます。- オーバーライド:
setCurrency、クラス:NumberFormat- パラメータ:
currency- この10進フォーマットで使用する新しい通貨- 例外:
NullPointerException-currencyがnullである場合- 導入されたバージョン:
- 1.4
-
getRoundingMode
public RoundingMode getRoundingMode()このDecimalFormatで使用されるRoundingModeを取得します。- オーバーライド:
getRoundingMode、クラス:NumberFormat- 戻り値:
- このDecimalFormatに使用される
RoundingMode。 - 導入されたバージョン:
- 1.6
- 関連項目:
setRoundingMode(RoundingMode)
-
setRoundingMode
public void setRoundingMode(RoundingMode roundingMode)このDecimalFormatで使用されるRoundingModeを設定します。- オーバーライド:
setRoundingMode、クラス:NumberFormat- パラメータ:
roundingMode- 使用されるRoundingMode- 例外:
NullPointerException-roundingModeがnullである場合。- 導入されたバージョン:
- 1.6
- 関連項目:
getRoundingMode()
-