クラスCompactNumberFormat
- すべての実装されたインタフェース:
Serializable,Cloneable
CompactNumberFormatは、ローカライズされたコンパクト形式で10進数をフォーマットするNumberFormatの具象サブクラスです。 コンパクトな数値フォーマットは、スペースが限られている環境用に設計されています。 たとえば、US localeに 7,000,000.00ではなく、書式設定された数値7Mを表示します。 CompactNumberFormatクラスは、「コンパクト数値書式設定」のLDMLの指定によって定義されます。
CompactNumberFormatの取得
コンパクトな数値フォーマットを取得するには、以下に示すいずれかの方法を使用します。- ファクトリ・メソッド
NumberFormat.getCompactNumberInstance()を使用して、SHORTスタイルのデフォルト・ロケールの書式を取得します。 - ファクトリ・メトード
NumberFormat.getCompactNumberInstance(Locale, Style)を使用して、別のロケールの形式を取得し、Styleを制御します。 -
CompactNumberFormatコンストラクタのいずれか(CompactNumberFormat(decimalPattern, symbols, compactPatterns)など)を使用して、さらにカスタマイズしたCompactNumberFormatを取得します。
特定のロケールおよびstyleの標準コンパクト形式が必要な場合は、前述のNumberFormatファクトリ・メソッドのいずれかを使用することをお薦めします。 CompactNumberFormatで定義されたインスタンス・メソッドを使用するには、これらのファクトリ・メソッドによって返されるNumberFormatは、CompactNumberFormatに変換する前に型を確認する必要があります。 インストールされているロケール依存のサービス実装が、指定されたLocaleをサポートしていない場合、親ロケール・チェーンが検索され、サポートされているLocaleが使用されます。
Style
NumberFormat.getCompactNumberInstance(Locale, Style)を使用する場合、コンパクト形式はSHORTまたはLONGスタイルで取得できます。 たとえば、US localeのSHORTスタイルのコンパクト数値インスタンスは、10000を "10K"としてフォーマットします。 ただし、LONGスタイルのインスタンスは、"10 thousand"と同じロケール形式の10000です。
CompactNumberFormatの使用
次に、ローカライズされた形式での書式設定と解析の例を示します。NumberFormat compactFormat = NumberFormat.getCompactNumberInstance(Locale.US, NumberFormat.Style.SHORT);
compactFormat.format(1000); // returns "1K"
compactFormat.parse("1K"); // returns 1000
書式設定
デフォルトの書式設定動作は、小数を持たない書式設定された文字列を返しますが、ユーザーはsetMinimumFractionDigits(int)メソッドを使用して小数部分を含めることができます。 数値1000.0または1000は、(US localeの) "1K"として("1.00K"ではなく)書式設定されます。 このため、書式設定用に指定するパターンには、最小整数桁、プレフィクスまたはサフィクスのみが含まれますが、小数部は含まれません。 たとえば、使用されるパターンは{"", "", "", 0K, 00K, ...}です。 数値を書式設定するために選択したパターンが"0" (特殊パターン)の場合は、指定したロケールに関してDecimalFormatによって提供される一般的な数値書式設定が使用されます。
丸め
CompactNumberFormatには、RoundingModeで定義されたフォーマット用の丸めモードがあります。 デフォルトでは、RoundingMode.HALF_EVENが使用されます。
解析
デフォルトの解析動作では、グループ化セパレータは、setGroupingUsed(boolean)を使用してtrueに設定されるまでグループ化できません。 小数部分の解析は、isParseIntegerOnly()によって異なります。 たとえば、解析整数のみがtrueに設定されている場合、小数部分はスキップされます。
コンパクト数値パターン
CompactNumberFormat(decimalPattern, symbols, compactPatterns)のcompactPatternsは、一連の文字列として表されます。各文字列は、数値の範囲の書式設定に使用されるpatternです。
US localeのSHORTスタイル・コンパクト数値パターンの例は、{"", "", "", "0K", "00K", "000K", "0M", "00M", "000M", "0B", "00B", "000B", "0T", "00T", "000T"}で、100から1014までです。 パターンはいくつでも作成でき、厳密には100の範囲から開始するインデックスに基づいています。 たとえば、前述のパターンでは、索引3の("0K")のパターンを使用して、範囲内の数値を書式設定: 1000 <= number < 10000、範囲の数値を書式設定するための索引4 ("00K"): 10000 <= number < 100000など。
ほとんどのロケールでは、100の範囲のパターン-102の範囲パターンで空の文字列であり、暗黙的に特殊なパターン"0"を意味します。 特殊パターン"0"は、コンパクト・パターンが含まれていない範囲で使用されます。 この特殊なパターンは、特定の範囲に対して明示的に指定したり、空の文字列のデフォルト・パターンとみなすことができます。
マイナスのサブパターン
コンパクト・パターンには、"0K;-0K"のように、サブパターンの境界文字';'によって区切られた、プラスおよびマイナスのサブパターンが含まれます。 各サブパターンには、プレフィクス、最小整数桁およびサフィクスが含まれます。 負のサブパターンが存在しない場合、負のサブパターンとしてマイナス記号'-' (U+002D HYPHEN-MINUS)が先頭に付加された正のサブパターンが使用されます。 つまり、"0K"単独は"0K;-0K"と同等です。 明示的にマイナスのサブパターンを指定した場合、このサブパターンは単にマイナスのプリフィクスとサフィックスを指定するために使用されます。 最小整数桁数およびその他の特性は、すべてプラス・パターンと同じです。 つまり、"0K;-00K"では"0K;-0K"と正確に同じ動作が生成されます。
特殊文字のエスケープ
コンパクト・パターンの多くの文字は文字どおりに使用され、解析中に照合され、書式設定中は変更されません。 「特殊文字」は、一方、その他の文字、文字列またはクラスを表す文字です。 プレフィクスまたはサフィクスにリテラルとして出現する場合は、特に明記しないかぎり、これらの文字は一重引用符' (U+0027)を使用して引用符で囲む必要があります。 たとえば、0क'.'。
複数形
CompactNumberFormatは、単数形と複数形のコンパクト・フォームの両方に対するパターンをサポートします。 複数形式の場合、Patternは、スペース' ' (U+0020)で区切られたPluralPattern (s)で構成され、中カッコ'{' (U+007B)および'}' (U+007D)のペア内で列挙されます。 この形式では、各PluralPatternは、そのcount、1つのコロン':' (U+003A)およびSimplePatternで構成されます。 後続のPluralPatternを分離するためにスペースが予約されているため、prefixまたはsuffixで文字どおりに使用されるように引用符で囲む必要があります。
たとえば、米国のロケールで数百万の(106)を表すパターンは、SimplePatternとして指定できます: "0 Million"。ドイツ語ロケールの場合は、PluralPatternとして指定できます: "{one:0' 'Million other:0' 'Millionen}".
LDMLの言語複数ルールに続くコンパクト・パターンの構文は、countです:
Pattern:
SimplePattern
'{' PluralPattern [' ' PluralPattern]optional '}'
SimplePattern:
PositivePattern
PositivePattern [; NegativePattern]optional
PluralPattern:
Count:SimplePattern
Count:
"zero" / "one" / "two" / "few" / "many" / "other"
PositivePattern:
Prefixoptional MinimumInteger Suffixoptional
NegativePattern:
Prefixoptional MinimumInteger Suffixoptional
Prefix:
Any characters except the special pattern characters
Suffix:
Any characters except the special pattern characters
MinimumInteger:
0
0 MinimumInteger
- 導入されたバージョン:
- 12
- 外部仕様
- 関連項目:
-
ネストされたクラスのサマリー
クラスjava.text.NumberFormatで宣言されたネストされたクラス/インタフェース
NumberFormat.Field, NumberFormat.Style -
フィールドのサマリー
クラスjava.text.NumberFormatで宣言されたフィールド
FRACTION_FIELD, INTEGER_FIELD -
コンストラクタのサマリー
コンストラクタコンストラクタ説明CompactNumberFormat(String decimalPattern, DecimalFormatSymbols symbols, String[] compactPatterns) 指定された小数点パターン、小数点フォーマット記号およびコンパクト・パターンを使用してCompactNumberFormatを作成します。CompactNumberFormat(String decimalPattern, DecimalFormatSymbols symbols, String[] compactPatterns, String pluralRules) 指定された小数点パターン、小数点フォーマット記号、圧縮パターンおよび複数形ルールを使用してCompactNumberFormatを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明clone()このCompactNumberFormatインスタンスのコピーを作成して返します。boolean指定されたオブジェクトをこのCompactNumberFormatと比較し、等しいかどうかを確認します。format(double number, StringBuffer result, FieldPosition fieldPosition) doubleをフォーマットして、コンパクトな形式を表す文字列を生成します。format(long number, StringBuffer result, FieldPosition fieldPosition) longをフォーマットして、そのコンパクトな形式を表す文字列を生成します。final StringBufferformat(Object number, StringBuffer toAppendTo, FieldPosition fieldPosition) 数値を書式設定して、コンパクト形式を表す文字列を生成します。Objectをフォーマットし、AttributedCharacterIteratorを生成します。intグループ化サイズを返します。このCompactNumberFormatで使用されているRoundingModeを取得します。inthashCode()このCompactNumberFormatのハッシュ・コードを返します。booleanこのフォーマットでグループ化が使用される場合に、trueを返します。booleanparse(String, ParsePosition)メソッドがBigDecimalを返すかどうかを返します。booleanこの書式がコンパクト数値の数値コンポーネントから整数のみを解析する場合、trueを返します。booleanisStrict()この書式で数値が厳密に解析される場合はtrue、それ以外の場合はfalseを返します。parse(String text, ParsePosition pos) 指定された文字列の先頭からテキストを解析して、Numberを生成します。voidsetGroupingSize(int newValue) グループ化サイズを設定します。voidsetGroupingUsed(boolean newValue) グループ化をこの形式で使用するかどうかを設定します。voidsetMaximumFractionDigits(int newValue) 数値の小数部分の最大桁数を設定します。voidsetMaximumIntegerDigits(int newValue) 数値の整数部分の最大桁数を設定します。voidsetMinimumFractionDigits(int newValue) 数値の小数部分の最小桁数を設定します。voidsetMinimumIntegerDigits(int newValue) 数値の整数部分の最小桁数を設定します。voidsetParseBigDecimal(boolean newValue) parse(String, ParsePosition)メソッドがBigDecimalを返すかどうかを設定します。voidsetParseIntegerOnly(boolean value) この書式設定でコンパクト数値のコンポーネントから整数のみを解析するかどうかを設定します。voidsetRoundingMode(RoundingMode roundingMode) このCompactNumberFormatで使用するRoundingModeを設定します。voidsetStrict(boolean strict) 解析する非厳密値を変更します。toString()デバッグ用に、このCompactNumberFormatを識別する文字列を返します。クラスjava.text.NumberFormatで宣言されたメソッド
format, format, getAvailableLocales, getCompactNumberInstance, getCompactNumberInstance, getCurrency, getCurrencyInstance, getCurrencyInstance, getInstance, getInstance, getIntegerInstance, getIntegerInstance, getMaximumFractionDigits, getMaximumIntegerDigits, getMinimumFractionDigits, getMinimumIntegerDigits, getNumberInstance, getNumberInstance, getPercentInstance, getPercentInstance, parse, parseObject, setCurrencyクラスjava.text.Formatで宣言されたメソッド
format, parseObject
-
コンストラクタの詳細
-
CompactNumberFormat
public CompactNumberFormat(String decimalPattern, DecimalFormatSymbols symbols, String[] compactPatterns) 指定された小数点パターン、小数点フォーマット記号およびコンパクト・パターンを使用してCompactNumberFormatを作成します。LocaleおよびStyleの標準的なコンパクト・パターンを使用してCompactNumberFormatのインスタンスを取得する場合は、NumberFormatで指定されるファクトリ・メソッドを使用して、コンパクト数値書式設定を行うことをお薦めします。次に、コンストラクタの使用例を示します。
String[] compactPatterns = {"", "", "", "a lot"}; NumberFormat fmt = new CompactNumberFormat("00", DecimalFormatSymbols.getInstance(Locale.US), compactPatterns); fmt.format(1); // returns "01" fmt.format(1000); // returns "a lot"- パラメータ:
decimalPattern- 一般的な数値書式設定の場合は「小数点パターン」symbols- 使用する記号セットcompactPatterns- 「コンパクト数値パターン」の配列- スロー:
NullPointerException- 指定された引数のいずれかがnullの場合IllegalArgumentException- 指定されたdecimalPatternまたはcompactPatterns配列に無効なパターンが含まれている場合、またはnullがコンパクト・パターンの配列に表示される場合- 関連項目:
-
CompactNumberFormat
public CompactNumberFormat(String decimalPattern, DecimalFormatSymbols symbols, String[] compactPatterns, String pluralRules) 指定された小数点パターン、小数点フォーマット記号、圧縮パターンおよび複数形ルールを使用してCompactNumberFormatを作成します。Locale、Style、およびpluralRulesの標準のコンパクト・パターンでCompactNumberFormatのインスタンスを取得するには、NumberFormatで指定されるファクトリ・メソッドを使用して、コンパクトな数値フォーマットを使用することをお薦めします。 例:NumberFormat.getCompactNumberInstance(Locale, Style)。- パラメータ:
decimalPattern- 一般的な数値書式設定の場合は「小数点パターン」symbols- 使用する記号セットcompactPatterns- 「コンパクト数値パターン」の配列pluralRules- "one"などのCountキーワードと実際の整数を関連付ける複数形ルールを指定する文字列。 この構文は、Unicode Consortium 「複数ルール構文」で定義されています。- スロー:
NullPointerException- 指定された引数のいずれかがnullの場合IllegalArgumentException- 指定されたdecimalPatternで、compactPatterns配列に無効なパターンが含まれている場合、コンパクト・パターンの配列にnullが表示されるか、または指定されたpluralRulesに無効な構文が含まれる場合- 導入されたバージョン:
- 14
- 外部仕様
- 関連項目:
-
-
メソッドの詳細
-
format
public final StringBuffer format(Object number, StringBuffer toAppendTo, FieldPosition fieldPosition) 数値を書式設定して、コンパクト形式を表す文字列を生成します。 指定可能な数値は、Numberの任意のサブクラスです。- オーバーライド:
format、クラスNumberFormat- パラメータ:
number- フォーマットする数値toAppendTo- フォーマット後のテキストを追加するStringBufferfieldPosition- 返された文字列内のフィールドの位置を追跡します。 たとえば、US localeの数値123456789を書式設定する場合、指定したfieldPositionがNumberFormat.INTEGER_FIELDの場合、fieldPositionの開始索引と終了索引はそれぞれ0および3に設定され、出力文字列123Mになります。 同様に、プレフィクス・フィールドとフィールドの位置は、それぞれNumberFormat.Field.PREFIXとNumberFormat.Field.SUFFIXを使用して取得できます。- 戻り値:
toAppendToとして渡されるStringBuffer- スロー:
IllegalArgumentException-numberがnullの場合、またはNumberのインスタンスでない場合NullPointerException-toAppendToまたはfieldPositionがnullの場合ArithmeticException- 丸めモードがRoundingMode.UNNECESSARYに設定されている場合、丸め処理が必要- 関連項目:
-
format
public StringBuffer format(double number, StringBuffer result, FieldPosition fieldPosition) doubleをフォーマットして、コンパクトな形式を表す文字列を生成します。- 定義:
format、クラスNumberFormat- パラメータ:
number- フォーマットするdouble数値result- テキストを追加する位置fieldPosition- 返された文字列内のフィールドの位置を追跡します。 たとえば、指定されたfieldPositionがNumberFormat.INTEGER_FIELDの場合、US localeの数値1234567.89を書式設定するには、fieldPositionの開始索引と終了索引がそれぞれ0および1に設定され、出力文字列1Mに対して使用されます。 同様に、プレフィクス・フィールドとフィールドの位置は、それぞれNumberFormat.Field.PREFIXとNumberFormat.Field.SUFFIXを使用して取得できます。- 戻り値:
resultとして渡されるStringBuffer- スロー:
NullPointerException-resultまたはfieldPositionがnullの場合ArithmeticException- 丸めモードがRoundingMode.UNNECESSARYに設定されている場合、丸め処理が必要- 関連項目:
-
format
public StringBuffer format(long number, StringBuffer result, FieldPosition fieldPosition) longをフォーマットして、そのコンパクトな形式を表す文字列を生成します。- 定義:
format、クラスNumberFormat- パラメータ:
number- フォーマットするlong数値result- テキストを追加する位置fieldPosition- 返された文字列内のフィールドの位置を追跡します。 たとえば、US localeの数値123456789を書式設定する場合、指定したfieldPositionがNumberFormat.INTEGER_FIELDの場合、fieldPositionの開始索引と終了索引はそれぞれ0および3に設定され、出力文字列123Mになります。 同様に、プレフィクス・フィールドとフィールドの位置は、それぞれNumberFormat.Field.PREFIXとNumberFormat.Field.SUFFIXを使用して取得できます。- 戻り値:
resultとして渡されるStringBuffer- スロー:
NullPointerException-resultまたはfieldPositionがnullの場合ArithmeticException- 丸めモードがRoundingMode.UNNECESSARYに設定されている場合、丸め処理が必要- 関連項目:
-
formatToCharacterIterator
public AttributedCharacterIterator formatToCharacterIterator(Object obj) Objectをフォーマットし、AttributedCharacterIteratorを生成します。 返されるAttributedCharacterIteratorを使用して、結果の文字列を作成したり、結果の文字列に関する情報を決定したりできます。AttributedCharacterIteratorの各属性キーは、NumberFormat.Field型になり、属性値が属性キーと同じになります。 返されるイテレータ(存在する場合)のプレフィクスとサフィクスの部分は、それぞれ属性NumberFormat.Field.PREFIXとNumberFormat.Field.SUFFIXによって表されます。- オーバーライド:
formatToCharacterIterator、クラスFormat- パラメータ:
obj- フォーマットするオブジェクト- 戻り値:
AttributedCharacterIterator(書式設定された値を記述)- スロー:
NullPointerException- objがnullの場合IllegalArgumentException- 指定されたオブジェクトをFormatでフォーマットできない場合ArithmeticException- 丸めモードがRoundingMode.UNNECESSARYに設定されている場合、丸め処理が必要
-
parse
public Number parse(String text, ParsePosition pos) 指定された文字列の先頭からテキストを解析して、Numberを生成します。このメソッドは、
ParsePositionで指定されたインデックスから始まるテキストを解析しようとします。 解析が成功すると、ParsePositionの索引は、最後に(解析では、必ずしも文字列の末尾までのすべての文字が使用されるわけではありません。)が使用された文字の後に索引に更新され、解析された番号が返されます。 更新されたParsePositionは、このメソッドへの次のコールの開始点を示すために使用できます。 エラーが発生した場合、ParsePositionの索引は変更されず、ParsePositionのエラー索引はエラーが発生した文字の索引に設定され、nullが返されます。このメソッドは、可能な場合はLongを(たとえば、[Long.MIN_VALUE, Long.MAX_VALUE]の範囲内および小数なし)、それ以外の場合はDoubleを返します。
戻り値は、指定されたテキストの数値部分に、接尾辞 (たとえば、"K" = 1000in
US locale)に相当する数値を掛けた値です。CompactNumberFormatは、デフォルトのプレフィクス/サフィクスとコンパクトなプレフィクス/サフィクスを同じ意味で照合できます。解析は厳密または非厳密の方法で行うことができ、デフォルトでは非厳密です。
「非厳密」の場合、プリフィクスまたはサフィクス(あるいはその両方)が空でなく、早期に終了する解析のために見つからない場合、またはプリフィクスの後の最初の文字を解析できない場合、解析は失敗します。
strictが
textの場合、解析は失敗- デフォルトまたはコンパクト・プレフィクスが見つかりません。 たとえば、
Locale.US通貨書式プレフィクス: "$" - デフォルトまたはコンパクトなサフィクスが見つかりません。 たとえば、
Locale.USNumberFormat.Style.SHORTコンパクト・サフィクス: "K" -
isGroupingUsed()はfalseを返し、グループ化記号が見つかりました -
isGroupingUsed()はtrueを戻し、getGroupingSize()は次に準拠していません -
isParseIntegerOnly()はtrueを返し、小数点が見つかります -
isGroupingUsed()はtrueを返し、isParseIntegerOnly()はfalseを返し、グループ化記号は小数点の後に出現 - その他の文字は検出され、予期される記号ではなく、数値部分内に出現する数字ではありません
返されるサブクラスは、
isParseBigDecimal()の値によって異なります。isParseBigDecimal()がfalse (デフォルト)の場合、書込み方法に関係なく、ほとんどの整数値がLongオブジェクトとして返されます:"17K"と"17.000K"の両方の解析からLong.valueOf(17000)へ。 値がLongに収まらない場合、結果はDoubleとして返されます。 これには小数部分を持つ値、無限大の値、NaN、および値 -0.0などが含まれます。呼出し元は、
NumberのメソッドdoubleValueやlongValueを用いることで、値を必要な型として取得できます。isParseBigDecimal()がtrueの場合、BigDecimalオブジェクトとして値が戻されます。 ただし、特殊な値(正負の無限大やNaNなど)は、対応するDouble定数値を含むDoubleインスタンスとして返されます。
CompactNumberFormatは、Character.digit()により定義された10進数を表すすべてのUnicode文字を解析します。 さらに、CompactNumberFormatは、DecimalFormatSymbolsオブジェクトで定義された0桁のローカライズ・ゼロから始まる10桁の連続文字としても認識します。CompactNumberFormat解析では科学表記法の解析は許可されません。 たとえば、'E'文字でUS localeブレークの文字列"1.05E4K"を解析し、1.05を返します。- 定義:
parse、クラスNumberFormat- パラメータ:
text- 解析される文字列pos- 前述のように、インデックス情報とエラー・インデックス情報を持つParsePositionオブジェクト- 戻り値:
- 解析された値。解析が失敗した場合は
null - スロー:
NullPointerException-textまたはposがnullの場合- 関連項目:
- デフォルトまたはコンパクト・プレフィクスが見つかりません。 たとえば、
-
setMaximumIntegerDigits
public void setMaximumIntegerDigits(int newValue) 数値の整数部分の最大桁数を設定します。 最大許容整数範囲は309です。newValue> 309,の場合、最大整数桁数は309に設定されます。 負の入力値は0に置き換えられます。- オーバーライド:
setMaximumIntegerDigits、クラスNumberFormat- パラメータ:
newValue- 表示される最大整数桁数- 関連項目:
-
setMinimumIntegerDigits
public void setMinimumIntegerDigits(int newValue) 数値の整数部分の最小桁数を設定します。 最大許容整数範囲は309で、newValue> 309,の場合、最小整数桁数は309に設定されます。 負の入力値は0に置き換えられます。- オーバーライド:
setMinimumIntegerDigits、クラスNumberFormat- パラメータ:
newValue- 表示される整数の最小桁数- 関連項目:
-
setMinimumFractionDigits
public void setMinimumFractionDigits(int newValue) 数値の小数部分の最小桁数を設定します。 最大許容小数範囲は340で、newValue> 340,の場合、最小小数桁数は340に設定されます。 負の入力値は0に置き換えられます。- オーバーライド:
setMinimumFractionDigits、クラスNumberFormat- パラメータ:
newValue- 表示される小数点以下の最小桁数- 関連項目:
-
setMaximumFractionDigits
public void setMaximumFractionDigits(int newValue) 数値の小数部分の最大桁数を設定します。 最大許容小数範囲は340で、newValue> 340,の場合、最大小数桁数は340に設定されます。 負の入力値は0に置き換えられます。- オーバーライド:
setMaximumFractionDigits、クラスNumberFormat- パラメータ:
newValue- 表示される小数点以下の最大桁数- 関連項目:
-
getRoundingMode
public RoundingMode getRoundingMode()このCompactNumberFormatで使用されているRoundingModeを取得します。- オーバーライド:
getRoundingMode、クラスNumberFormat- 戻り値:
- この
CompactNumberFormatに使用されるRoundingMode - 関連項目:
-
setRoundingMode
public void setRoundingMode(RoundingMode roundingMode) このCompactNumberFormatで使用するRoundingModeを設定します。- オーバーライド:
setRoundingMode、クラスNumberFormat- パラメータ:
roundingMode- 使用されるRoundingMode- スロー:
NullPointerException-roundingModeがnullの場合- 関連項目:
-
getGroupingSize
public int getGroupingSize()グループ化サイズを返します。 グループ化サイズとは、数値の整数部分における区切り文字と区切り文字の間の桁数です。 たとえば、US localeのコンパクト数値"12,347 trillion"ではグループ化サイズは3です。- 戻り値:
- グループ化サイズ
- 関連項目:
-
setGroupingSize
public void setGroupingSize(int newValue) グループ化サイズを設定します。 グループ化サイズとは、数値の整数部分における区切り文字と区切り文字の間の桁数です。 たとえば、US localeのコンパクト数値"12,347 trillion"ではグループ化サイズは3です。 グループ化サイズは、ゼロ以上127以下である必要があります。- パラメータ:
newValue- 新しいグループ化サイズ- スロー:
IllegalArgumentException-newValueが負の場合または127より大きい場合- 関連項目:
-
isGroupingUsed
public boolean isGroupingUsed()このフォーマットでグループ化が使用される場合に、trueを返します。 たとえば、グループ化とグループ化のサイズを3に設定し、数値12346567890987654は、US locale内で"12,347 trillion"のようにフォーマットできます。 グループ化セパレータはロケールに依存します。- オーバーライド:
- クラス
NumberFormatのisGroupingUsed - 戻り値:
- グループ化を使用している場合は
true、そうでない場合はfalse - 関連項目:
-
setGroupingUsed
public void setGroupingUsed(boolean newValue) グループ化をこの形式で使用するかどうかを設定します。- オーバーライド:
setGroupingUsed、クラスNumberFormat- パラメータ:
newValue- グループ化を使用している場合はtrue、そうでない場合はfalse- 関連項目:
-
isParseIntegerOnly
public boolean isParseIntegerOnly()この書式がコンパクト数値の数値コンポーネントから整数のみを解析する場合、trueを返します。 整数を解析すると、数値コンポーネントの整数のみが考慮され、結果の出力が引き続きコンピュートされます。 たとえば、US localeで、このメソッドがtrueを返す場合、文字列"1234.78 thousand"は値1234000(1234 (整数部分) * 1000 (thousand))として解析され、部分はスキップされます。 解析操作で受け入れられる正確な形式は、ロケールに依存します。- オーバーライド:
- クラス
NumberFormatのisParseIntegerOnly - 実装要件:
- この実装では、
ParsePosition索引は小数点記号の位置ではなく、文字列の終わりに設定されます。 - 戻り値:
trueコンパクト数値を整数のみとして解析する場合、falseそれ以外の場合
-
setParseIntegerOnly
public void setParseIntegerOnly(boolean value) この書式設定でコンパクト数値のコンポーネントから整数のみを解析するかどうかを設定します。- オーバーライド:
- クラス
NumberFormatのsetParseIntegerOnly - パラメータ:
value-trueコンパクト数値を整数のみとして解析する場合はtrue; それ以外の場合はfalse- 関連項目:
-
isStrict
public boolean isStrict()この書式で数値が厳密に解析される場合はtrue、それ以外の場合はfalseを返します。- オーバーライド:
- クラス
NumberFormatのisStrict - 戻り値:
- この書式で番号が厳密に解析される場合は
true、それ以外の場合はfalse - 導入されたバージョン:
- 23
- 関連項目:
-
setStrict
public void setStrict(boolean strict) 解析する非厳密値を変更します。 解析は厳密でも非厳密でもかまいません。デフォルトでは非厳密です。- オーバーライド:
- クラス
NumberFormatのsetStrict - パラメータ:
strict- 解析を厳密に実行する場合はtrue、それ以外の場合はfalse- 導入されたバージョン:
- 23
- 関連項目:
-
isParseBigDecimal
public boolean isParseBigDecimal()parse(String, ParsePosition)メソッドがBigDecimalを返すかどうかを返します。 デフォルト値はfalseです。- 戻り値:
- この解析メソッドがBigDecimalを返す場合は
true、そうでない場合はfalse - 関連項目:
-
setParseBigDecimal
public void setParseBigDecimal(boolean newValue) parse(String, ParsePosition)メソッドがBigDecimalを返すかどうかを設定します。- パラメータ:
newValue- この解析メソッドがBigDecimalを返す場合はtrue、そうでない場合はfalse- 関連項目:
-
equals
public boolean equals(Object obj) 指定されたオブジェクトをこのCompactNumberFormatと比較し、等しいかどうかを確認します。 オブジェクトがCompactNumberFormatでもあり、2つの書式で値が同じ書式である場合、trueを返します。- オーバーライド:
equals、クラスNumberFormat- 実装要件:
- このメソッドは、
instanceofではなく、getClass()に基づくクラス・アイデンティティの概念を使用して等価チェックを実行します。 したがって、サブクラスのequalsメソッドでは、このクラスのインスタンスはサブクラスのインスタンスと等しく比較されません。 - パラメータ:
obj- 比較対象のオブジェクト- 戻り値:
- これが他方の
CompactNumberFormatと等しい場合はtrue - 関連項目:
-
hashCode
public int hashCode()このCompactNumberFormatのハッシュ・コードを返します。- オーバーライド:
hashCode、クラスNumberFormat- 実装要件:
- このクラスの非一時インスタンス・フィールドは、
Objects.hashCode(java.lang.Object)に定義されている契約に準拠するハッシュ・コード値の計算に使用されます。 - 戻り値:
- この
CompactNumberFormatのハッシュ・コード - 関連項目:
-
toString
-
clone
public CompactNumberFormat clone()このCompactNumberFormatインスタンスのコピーを作成して返します。- オーバーライド:
clone、クラスNumberFormat- 戻り値:
- このインスタンスの複製
- 関連項目:
-