語言

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 如果 為假(預設值),大多數整數值都會以物件形式回傳Long,無論它們怎麼寫:"17"兩者"17.000"都解析為 Long(17)。isParseBigDecimal()>< 無法放入 的Long值則以 s 回傳。Double 這包括分數部分的值、無限大值, NaN以及 -0.0 的值。 DecimalFormat 是否 <EM>not</em> 根據來源字串中是否有十進位分隔符決定回傳 A Double 或 A Long 。 這樣做可以防止像 這樣,讓比克的尾數溢出的整數(例如 "-9,223,372,036,854,775,808.00")無法被正確解析。

呼叫者可以使用 Number 方法 doubleValue、 longValue、等,來取得他們想要的類型。 <如果>isParseBigDecimal()為真,值會以物件形式回傳BigDecimal。 這些值是為對應字串以區域無關格式所建 java.math.BigDecimal#BigDecimal(String) 構的。 特殊情況為負無限大與正無限大,以及 NaN 會以包含對應Double常數值的實例回傳Double。 </ul>

DecimalFormat 解析所有代表十進位數字的 Unicode 字元,定義如下 Character.digit()。 此外, DecimalFormat 也可識別物件中以 DecimalFormatSymbols 局部零位開頭的連續十個字元作為數字。

Java 文件 java.text.DecimalFormat.parse(java.lang.String, java.text.ParsePosition)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於