言語

DecimalFormat.Parse(String, ParsePosition) メソッド

定義

文字列からテキストを解析して、 Numberを生成します。

[Android.Runtime.Register("parse", "(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/lang/Number;", "GetParse_Ljava_lang_String_Ljava_text_ParsePosition_Handler")]
public override Java.Lang.Number? Parse(string? text, Java.Text.ParsePosition? pos);
[<Android.Runtime.Register("parse", "(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/lang/Number;", "GetParse_Ljava_lang_String_Ljava_text_ParsePosition_Handler")>]
override this.Parse : string * Java.Text.ParsePosition -> Java.Lang.Number

パラメーター

text
String

解析する文字列

pos
ParsePosition

上で説明したように、インデックスとエラー インデックスの情報を含む ParsePosition オブジェクト。

返品

解析された値、または解析が失敗した場合にnull

属性

注釈

文字列からテキストを解析して、 Numberを生成します。

このメソッドは、 posによって指定されたインデックスから始まるテキストの解析を試みます。 解析が成功した場合、 pos のインデックスは、使用された最後の文字の後のインデックスに更新されます (解析では、文字列の末尾までのすべての文字が必ずしも使用されるとは限りません)、解析された番号が返されます。 更新された pos を使用して、このメソッドの次の呼び出しの開始点を示すことができます。 エラーが発生した場合、 pos のインデックスは変更されず、 pos のエラー インデックスはエラーが発生した文字のインデックスに設定され、null が返されます。

返されるサブクラスは、 #isParseBigDecimal の値と解析される文字列によって異なります。 <ul><li>isParseBigDecimal()が false (既定値) の場合、ほとんどの整数値は、書き込み方法に関係なく、Long オブジェクトとして返されます。"17""17.000"両方がLong(17)に解析されます。 Longに収まらない値は、Doubleとして返されます。 これには、小数部、無限値、 NaN、値 -0.0 を含む値が含まれます。 DecimalFormatは<em></em>ソース文字列に小数点区切り記号が存在することに基づいて、DoubleまたはLongを返すかどうかを決定します。 そうすることで、 "-9,223,372,036,854,775,808.00"などの double の仮数をオーバーフローする整数が正確に解析されなくなります。

呼び出し元は、doubleValuelongValueなどのNumber メソッドを使用して、必要な型を取得できます。 <li>isParseBigDecimal()が true の場合、値は BigDecimal オブジェクトとして返されます。 値は、ロケールに依存しない形式の対応する文字列に対して java.math.BigDecimal#BigDecimal(String) によって構築された値です。 特殊なケースでは、負の正の無限大と NaN は、対応するDouble定数の値を保持するDoubleインスタンスとして返されます。 </ul>

DecimalFormat は、 Character.digit()で定義されている 10 進数を表す Unicode 文字をすべて解析します。 さらに、 DecimalFormat では、 DecimalFormatSymbols オブジェクトで定義されたローカライズされたゼロ桁から始まる 10 文字の連続する数字も認識されます。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象