JavaTM 2 Platform
Std. Ed. v1.3

java.text
クラス DecimalFormat

java.lang.Object
  |
  +--java.text.Format
        |
        +--java.text.NumberFormat
              |
              +--java.text.DecimalFormat
すべての実装インタフェース:
Cloneable, Serializable

public class DecimalFormat
extends NumberFormat

DecimalFormat は、10 進数をフォーマットする NumberFormat の具象サブクラスです。DecimalFormat には、西欧、アラビア、およびインド数字に対するサポートを含む様々な機能が用意されており、任意のロケールで数値の解析とフォーマットが実行できるよう設計されています。また、整数 (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 ファクトリメソッドを使用している場合、パターンと記号は java.text.resource パッケージ内の地域対応された ResourceBundle から読み込まれます。

 // Print out a number using the localized number, currency,
 // and percent format for each locale
 Locale[] locales = NumberFormat.getAvailableLocales();
 double myNumber = -1234.56;
 NumberFormat form;
 for (int j=0; j<3; ++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.getCurrencyInstance(locales[i]); break;
         default:
             form = NumberFormat.getPercentInstance(locales[i]); break;
         }
         try {
             // Assume form is a DecimalFormat
             System.out.print(": " + ((DecimalFormat) form).toPattern()
                              + " -> " + form.format(myNumber));
         } catch (IllegalArgumentException e) {}
         try {
             System.out.println(" -> " + form.parse(form.format(myNumber)));
         } catch (ParseException e) {}
     }
 }
 

パターン

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 というように、グループ区切り文字間の一定の桁数です。複数のグループ区切り文字を持つパターンを指定すると、最後の文字と整数の終わりの間が、この間隔として使用されます。したがって、"#,##,###,####" == "######,####" == "##,####,####" となります。

「#.#.#」や「#.###,###」などの不正なパターンを使用すると、DecimalFormat では、問題を示すメッセージとともに IllegalArgumentException がスローされます。

解析

DecimalFormat は、Character.digit() で定義されている、10 進数字を表すすべての Unicode 文字を解析します。さらに、DecimalFormat は、DecimalFormatSymbols オブジェクトで定義されている地域対応されたゼロ数字で始まる 10 個の連続した文字を数字として認識します。フォーマット中に、DecimalFormatSymbols に基づいた数字が出力されます。

DecimalFormat.parse は、解析された数値文字列を表す java.lang.Number のサブクラスを返します。DecimalFormat は数値文字列を表すことができるもっとも実用的なサブクラスを選択します。これは、ほとんどの整数値が、どのような書き方をされている場合でも Long オブジェクトとして返されることを意味します。たとえば、「17」および「17.000」は両方とも Long(17) に解析されます。Long に適合しない値は、Double として返されます。これには、小数部分を持つ値、無限大値、NaN、-0.0 の値などがあります。DecimalFormat は、ソース文字列内に数値桁区切り子があるかどうかに基づいて Double または Long のどちらを返すか決定しません。これを実行すると、「10,000,000,000,000,000.00」などの double の仮数をオーバーフローする整数を正確に解析できなくなります。現在、DecimalFormat によって返されるクラスは LongDouble だけですが、呼び出し側はこれに依存する必要はありません。呼び出し側は Number メソッドの doubleValuelongValue などを使用して、必要な型を取得できます。

DecimalFormat.parse(String, ParsePosition) は文字列の解析に失敗すると null を返し、ParsePosition インデックスは変更されず、ParsePosition はエラーインデックスに設定されます。簡易メソッド DecimalFormat.parse(String) は、ParseException をスローして解析の失敗を示します。

特殊な値

NaN は単一の文字 (通常は \uFFFD) としてフォーマットされます。この文字は DecimalFormatSymbols オブジェクトによって判定されます。これは、接頭辞と接尾辞が使用されない唯一の値です。

無限大は単一文字 (通常は、\u221E) としてフォーマットされ、負または正の接頭辞および接尾辞が適用されます。無限大文字は DecimalFormatSymbols オブジェクトによって判定されます。

負のゼロ (「-0」) は、isParseIntegerOnly() が true でない場合は Double(-0.0) に解析され、true である場合は Long(0) に解析されます。

科学表記法

科学表記法の数値は仮数と 10 の累乗の結果として表されます。たとえば、1234 は 1.234 x 10^3 として表せます。仮数の多くは 1.0 <= x <10.0 の範囲内ですが、必ずしもこの範囲内にする必要はありません。DecimalFormat には、パターンだけを介して科学表記法をフォーマットおよび解析するよう指示できます。現在、科学表記法形式を作成するファクトリメソッドはありません。パターンでは、指数文字の直後に 1 つ以上の数字を続けて科学表記法を示します。たとえば、「0.###E0」では 1234 を「1.234E3」とフォーマットします。

パターン構文

 pattern     := pos_pattern{';' neg_pattern}
 pos_pattern := {prefix}number{suffix}
 neg_pattern := {prefix}number{suffix}
 number      := integer{'.' fraction}{exponent}
 prefix      := '\u0000'..'\uFFFD' - special_characters
 suffix      := '\u0000'..'\uFFFD' - special_characters
 integer     := min_int | '#' | '#' integer | '#' ',' integer
 min_int     := '0' | '0' min_int | '0' ',' min_int
 fraction    := '0'* '#'*
 exponent    := 'E' '0' '0'*
  
 注釈:
   X*       X の 0 またはそれ以上のインスタンス
   { X }    X の 0 またはそれ以上のインスタンス
   X | Y    X か Y
   X..Y     X から Y までの任意の文字
   S - T    S の中の文字。ただし、T の中のものは除く
 

特殊パターン文字

パターン内の多くの文字は文字どおりに取得されます。このような文字は解析中に一致すると、フォーマット中にそのまま出力されます。一方、特殊文字は他の文字、文字列、または文字のクラスを表します。特殊文字は、接頭辞や接尾辞にリテラルとして表示する場合は、特に指示がない限り、引用符で囲む必要があります。

次にリストする文字は、地域対応されていないパターンで使用されます。地域対応されていないパターンでは、代わりにこのフォーマッタの DecimalFormatSymbols オブジェクトから取得した対応する文字を使用すると、これらの文字は特殊な状態ではなくなります。2 つの例外は地域対応されていない通貨記号と引用符です。

記号 位置 地域対応の有無 意味
0 数値 Y 数字
# 数値 Y 数字。ゼロだと表示されない
. 数値 Y 数値桁区切り子または通貨桁区切り子
- 数値 Y マイナス記号
, 数値 Y グループ区切り子
E 数値 Y 科学表記法の仮数と指数を区切る。接頭辞や接尾辞内に引用符を付ける必要はない
; サブパターン境界 Y 正と負のサブパターンを区切る
% 接頭辞または接尾辞 Y 100 倍してパーセントを表す
\u2030 接頭辞または接尾辞 Y 1000 倍してパーミルを表す
¤
(\u00A4)
接頭辞または接尾辞 N 通貨記号で置換される通貨符号。2 つの場合は、国際通貨記号で置換される。パターン内にある場合は、数値桁区切り子ではなく、通貨桁区切り子が使用される
' 接頭辞または接尾辞 N 接頭辞や接尾辞内の特殊文字を引用符で囲む場合に使用される。たとえば、"'#'#" を使用すると 123 は "#123" にフォーマットされる。単一引用符自体を作成するために合は、1 行に 2 つ引用符を使用する ("# o''clock")

関連項目:
Format, NumberFormat, ChoiceFormat, ParsePosition, 直列化された形式

クラス java.text.NumberFormat から継承したフィールド
FRACTION_FIELD, INTEGER_FIELD
 
コンストラクタの概要
DecimalFormat()
          デフォルトロケールに対して、デフォルトのパターンと記号を使って DecimalFormat を作成します。
DecimalFormat(String pattern)
          デフォルトロケールに対して、指定されたパターンと記号を使って DecimalFormat を作成します。
DecimalFormat(String pattern, DecimalFormatSymbols symbols)
          指定されたパターンと記号を使って DecimalFormat を作成します。
 
メソッドの概要
 void applyLocalizedPattern(String pattern)
          指定されたパターンをこの Format オブジェクトに適用します。
 void applyPattern(String pattern)
          指定されたパターンをこの Format オブジェクトに適用します。
 Object clone()
          標準オーバーライドです。
 boolean equals(Object obj)
          equals メソッドをオーバーライドします。
 StringBuffer format(double number, StringBuffer result, FieldPosition fieldPosition)
          double をフォーマットして文字列を作成します。
 StringBuffer format(long number, StringBuffer result, FieldPosition fieldPosition)
          long をフォーマットして文字列を作成します。
 DecimalFormatSymbols getDecimalFormatSymbols()
          数値桁区切り文字を返します。
 int getGroupingSize()
          グループ化サイズを返します。
 int getMultiplier()
          パーセントやパーミル (1000) などで使用する掛け数を取得します。
 String getNegativePrefix()
          負の接頭辞を取得します。
 String getNegativeSuffix()
          負の接尾辞を取得します。
 String getPositivePrefix()
          正の接頭辞を取得します。
 String getPositiveSuffix()
          正の接尾辞を取得します。
 int hashCode()
          hashCode をオーバーライドします。
 boolean isDecimalSeparatorAlwaysShown()
          整数と区別する小数点の動作を取得します (小数位では小数点が常に表示される)。
 Number parse(String text, ParsePosition parsePosition)
          指定された文字列と一致する値を持つ Number のインスタンスを返します。
 void setDecimalFormatSymbols(DecimalFormatSymbols newSymbols)
          数値桁区切り文字を設定します。
 void setDecimalSeparatorAlwaysShown(boolean newValue)
          整数と区別する小数点の動作を設定します (小数位では小数点が常に表示される)。
 void setGroupingSize(int newValue)
          グループ化サイズを設定します。
 void setMaximumFractionDigits(int newValue)
          数値の小数部分の最大桁数を設定します。
 void setMaximumIntegerDigits(int newValue)
          数値の整数部分の最大桁数を設定します。
 void setMinimumFractionDigits(int newValue)
          数値の小数部分の最小桁数を設定します。
 void setMinimumIntegerDigits(int newValue)
          数値の整数部分の最小桁数を設定します。
 void setMultiplier(int newValue)
          パーセントやパーミル (1000) などで使用する掛け数を設定します。
 void setNegativePrefix(String newValue)
          負の接頭辞を設定します。
 void setNegativeSuffix(String newValue)
          負の接尾辞を設定します。
 void setPositivePrefix(String newValue)
          正の接頭辞を設定します。
 void setPositiveSuffix(String newValue)
          負の接尾辞を設定します。
 String toLocalizedPattern()
          この Format オブジェクトの現在の状態を表す地域対応されたパターン文字列を総合します。
 String toPattern()
          この Format オブジェクトの現在の状態を表すパターン文字列を総合します。
 
クラス java.text.NumberFormat から継承したメソッド
format, format, format, getAvailableLocales, getCurrencyInstance, getCurrencyInstance, getInstance, getInstance, getMaximumFractionDigits, getMaximumIntegerDigits, getMinimumFractionDigits, getMinimumIntegerDigits, getNumberInstance, getNumberInstance, getPercentInstance, getPercentInstance, isGroupingUsed, isParseIntegerOnly, parse, parseObject, setGroupingUsed, setParseIntegerOnly
 
クラス java.text.Format から継承したメソッド
format, parseObject
 
クラス java.lang.Object から継承したメソッド
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

DecimalFormat

public DecimalFormat()
デフォルトロケールに対して、デフォルトのパターンと記号を使って DecimalFormat を作成します。これは、国際化が主要な問題でない場合は、DecimalFormat を得るためには簡単な方法です。

指定されたロケールに対する標準フォーマットを得るには、getNumberInstance など、NumberFormat のファクトリメソッドを使用してください。これらのファクトリメソッドは、指定されたロケールに対する NumberFormat の最適なサブクラスを返します。

関連項目:
NumberFormat.getInstance(), NumberFormat.getNumberInstance(), NumberFormat.getCurrencyInstance(), NumberFormat.getPercentInstance()

DecimalFormat

public DecimalFormat(String pattern)
デフォルトロケールに対して、指定されたパターンと記号を使って DecimalFormat を作成します。これは、国際化が主要な問題でない場合は、DecimalFormat を得るためには簡単な方法です。

指定されたロケールに対する標準フォーマットを得るには、getNumberInstance など、NumberFormat のファクトリメソッドを使用してください。これらのファクトリメソッドは、指定されたロケールに対する NumberFormat の最適なサブクラスを返します。

パラメータ:
pattern - 非地域対応のパターン文字列
例外:
IllegalArgumentException - 指定されたパターンが正しくない場合
関連項目:
NumberFormat.getInstance(), NumberFormat.getNumberInstance(), NumberFormat.getCurrencyInstance(), NumberFormat.getPercentInstance()

DecimalFormat

public DecimalFormat(String pattern,
                     DecimalFormatSymbols symbols)
指定されたパターンと記号を使って DecimalFormat を作成します。フォーマットの動作を完全にカスタマイズする必要がある場合には、このコンストラクタを使ってください。

指定されたロケールに対する標準フォーマットを得るには、getInstance や getCurrencyInstance など、NumberFormat のファクトリメソッドを使用してください。標準フォーマットをわずかに調整するだけであれば、NumberFormat ファクトリメソッドで返されたフォーマットを修正することができます。

パラメータ:
pattern - 非地域対応のパターン文字列
symbols - 使用する記号セット
例外:
IllegalArgumentException - 指定されたパターンが正しくない場合
関連項目:
NumberFormat.getInstance(), NumberFormat.getNumberInstance(), NumberFormat.getCurrencyInstance(), NumberFormat.getPercentInstance(), DecimalFormatSymbols
メソッドの詳細

format

public StringBuffer format(double number,
                           StringBuffer result,
                           FieldPosition fieldPosition)
double をフォーマットして文字列を作成します。
オーバーライド:
クラス NumberFormat 内の format
パラメータ:
number - フォーマットする double
toAppendTo - テキストを追加する位置
fieldPosition - 入力の場合は位置合わせフィールド (必要な場合)。出力の場合は位置合わせフィールドのオフセット
戻り値:
結果パラメータとして渡される値
関連項目:
FieldPosition

format

public StringBuffer format(long number,
                           StringBuffer result,
                           FieldPosition fieldPosition)
long をフォーマットして文字列を作成します。
オーバーライド:
クラス NumberFormat 内の format
パラメータ:
number - フォーマットする long
toAppendTo - テキストを追加する位置
fieldPosition - 入力の場合は位置合わせフィールド (必要な場合)。出力の場合は位置合わせフィールドのオフセット
戻り値:
結果パラメータとして渡される値
関連項目:
FieldPosition

parse

public Number parse(String text,
                    ParsePosition parsePosition)
指定された文字列と一致する値を持つ Number のインスタンスを返します。ソース文字列のビットをすべて表すことができるもっとも実用的なサブクラスが選択されます。
オーバーライド:
クラス NumberFormat 内の parse
パラメータ:
text - 解析される文字列
parsePosition - 入口では、解析を開始する位置、出口では最後に解析された文字を超えた位置。解析が失敗すると、インデックスは移動してエラーインデックスが設定される
戻り値:
解析された値。解析が失敗した場合は null

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


getNegativePrefix

public String getNegativePrefix()
負の接頭辞を取得します。

例: -123、($123) (負の接尾辞付き)、sFr-123


setNegativePrefix

public void setNegativePrefix(String newValue)
負の接頭辞を設定します。

例: -123、($123) (負の接尾辞付き)、sFr-123


getPositiveSuffix

public String getPositiveSuffix()
正の接尾辞を取得します。

例: 123%


setPositiveSuffix

public void setPositiveSuffix(String newValue)
負の接尾辞を設定します。

例: 123%


getNegativeSuffix

public String getNegativeSuffix()
負の接尾辞を取得します。

例: -123%、($123) (正の接尾辞付き)


setNegativeSuffix

public void setNegativeSuffix(String newValue)
負の接尾辞を設定します。

例: 123%


getMultiplier

public int getMultiplier()
パーセントやパーミル (1000) などで使用する掛け数を取得します。パーセントでは、接尾辞として % を、掛け数として 100 を設定します (アラビア語では、グラフィックのパーセント記号を使用する)。パーミルでは、接尾辞として ? を、掛け数として 1000 を設定します。

例: 100 の場合、1.23 -> "123"、"123" -> 1.23


setMultiplier

public void setMultiplier(int newValue)
パーセントやパーミル (1000) などで使用する掛け数を設定します。パーセントでは、接尾辞として % を、掛け数として 100 を設定します (アラビア語では、グラフィックのパーセント記号を使用する)。パーミルでは、接尾辞として ? を、掛け数として 1000 を設定します。

例: 100 の場合、1.23 -> "123"、"123" -> 1.23


getGroupingSize

public int getGroupingSize()
グループ化サイズを返します。グループ化サイズとは、数値の整数部分における区切り文字と区切り文字の間の桁数です。たとえば、数値 123,456.78 の場合、グループ化サイズは 3 です。
関連項目:
setGroupingSize(int), NumberFormat.isGroupingUsed(), DecimalFormatSymbols.getGroupingSeparator()

setGroupingSize

public void setGroupingSize(int newValue)
グループ化サイズを設定します。グループ化サイズとは、数値の整数部分における区切り文字と区切り文字の間の桁数です。たとえば、数値 123,456.78 の場合、グループ化サイズは 3 です。
関連項目:
getGroupingSize(), NumberFormat.setGroupingUsed(boolean), DecimalFormatSymbols.setGroupingSeparator(char)

isDecimalSeparatorAlwaysShown

public boolean isDecimalSeparatorAlwaysShown()
整数と区別する小数点の動作を取得します (小数位では小数点が常に表示される)。

例: Decimal ON: 12345 -> 12345.; OFF: 12345 -> 12345


setDecimalSeparatorAlwaysShown

public void setDecimalSeparatorAlwaysShown(boolean newValue)
整数と区別する小数点の動作を設定します (小数位では小数点が常に表示される)。

例: Decimal ON: 12345 -> 12345.; OFF: 12345 -> 12345


clone

public Object clone()
標準オーバーライドです。セマンティクスは変わりません。
オーバーライド:
クラス NumberFormat 内の clone
クラス java.lang.Object からコピーされたタグ:
戻り値:
このインスタンスの複製
例外:
CloneNotSupportedException - オブジェクトのクラスが Cloneable インタフェースをサポートしていない場合。clone メソッドをオーバーライドしたサブクラスも、インスタンスを複製できないことを示すためにこの例外をスローすることがある
OutOfMemoryError - 十分なメモリがない場合
関連項目:
Cloneable

equals

public boolean equals(Object obj)
equals メソッドをオーバーライドします。
オーバーライド:
クラス NumberFormat 内の equals
クラス java.lang.Object からコピーされたタグ:
パラメータ:
obj - 比較対象の参照オブジェクト
戻り値:
obj 引数に指定されたオブジェクトとこのオブジェクトが等しい場合は true、そうでない場合は false
関連項目:
Boolean.hashCode(), Hashtable

hashCode

public int hashCode()
hashCode をオーバーライドします。
オーバーライド:
クラス NumberFormat 内の hashCode
クラス java.lang.Object からコピーされたタグ:
戻り値:
このオブジェクトのハッシュコード値
関連項目:
Object.equals(java.lang.Object), Hashtable

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#)" (負の数値は括弧で囲む)

負のパターンでは、最小と最大の桁数は無視されます。これらは、正のパターンで設定されるものと見なされます。


applyLocalizedPattern

public void applyLocalizedPattern(String pattern)
指定されたパターンをこの Format オブジェクトに適用します。このパターンの表記は、地域対応されているものと見なされます。パターンとは、各種のフォーマット特性に対する簡略仕様です。これらの特性は、各設定機能メソッドで個別に変更することもできます。

このルーチンで設定される整数の桁数に制限はありません。これは、一般なエンドユーザの要望であるためです。実際の値を設定したい場合は、setMaximumInteger を使用してください。負の数値の場合は、セミコロンで区切った 2 つ目のパターンを使用します。

例: "#,#00.0#" -> 1,234.56

これは、最小 2 桁の整数、1 つの小数点、最大 2 桁の小数を意味します。

例: "#,#00.0#;(#,#00.0#)" (負の数値は括弧で囲む)

負のパターンでは、最小と最大の桁数は無視されます。これらは、正のパターンで設定されるものと見なされます。


setMaximumIntegerDigits

public void setMaximumIntegerDigits(int newValue)
数値の整数部分の最大桁数を設定します。このオーバーライドは、整数の桁数を 309 に制限します。
オーバーライド:
クラス NumberFormat 内の setMaximumIntegerDigits
関連項目:
NumberFormat.setMaximumIntegerDigits(int)

setMinimumIntegerDigits

public void setMinimumIntegerDigits(int newValue)
数値の整数部分の最小桁数を設定します。このオーバーライドは、整数の桁数を 309 に制限します。
オーバーライド:
クラス NumberFormat 内の setMinimumIntegerDigits
関連項目:
NumberFormat.setMinimumIntegerDigits(int)

setMaximumFractionDigits

public void setMaximumFractionDigits(int newValue)
数値の小数部分の最大桁数を設定します。このオーバーライドは、小数の桁数を 340 に制限します。
オーバーライド:
クラス NumberFormat 内の setMaximumFractionDigits
関連項目:
NumberFormat.setMaximumFractionDigits(int)

setMinimumFractionDigits

public void setMinimumFractionDigits(int newValue)
数値の小数部分の最小桁数を設定します。このオーバーライドは、小数の桁数を 340 に制限します。
オーバーライド:
クラス NumberFormat 内の setMinimumFractionDigits
関連項目:
NumberFormat.setMinimumFractionDigits(int)

JavaTM 2 Platform
Std. Ed. v1.3

バグや機能要求の報告
さらに詳しい API リファレンスおよび開発者ドキュメントについては、 Java 2 SDK SE Developer Documentation を参照してください。このドキュメントには、概念、用語の定義、回避策、 実用的なコード例など、開発者を対象にした詳細な解説が掲載されています。

Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.