Язык

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 If is false (по умолчанию), большинство целых значений возвращаются в виде Long объектов, независимо от того, как они записываются: "17" и "17.000" оба синтаксического анализаLong(17).isParseBigDecimal()>< Значения, которые не могут соответствовать значению, Long возвращаются как Doubles. Сюда входят значения с дробной частью, бесконечными значениями и NaNзначением -0,0. DecimalFormatне<</em>> решает, следует ли возвращать значение Double или Long значение на основе наличия десятичного разделителя в исходной строке. Это позволит предотвратить точный анализ целых чисел, которые переполнены мантиссой двойного, например "-9,223,372,036,854,775,808.00", синтаксического анализа.

Вызывающие Number пользователи могут использовать методы doubleValue, longValueи т. д., чтобы получить нужный тип. <li>Если isParseBigDecimal() имеет значение true, значения возвращаются в виде BigDecimal объектов. Значения — это те, которые создаются java.math.BigDecimal#BigDecimal(String) для соответствующих строк в формате, независимом от языкового стандарта. Особые случаи отрицательных и положительных бесконечности и NaN возвращаются в виде Double экземпляров, содержащих значения соответствующих Double констант. </ul>

DecimalFormat анализирует все символы Юникода, представляющие десятичные цифры, как определено Character.digit(). Кроме того, также распознает как цифры десяти последовательных символов, начиная с локализованной нулевой цифры, DecimalFormat определенной в объекте DecimalFormatSymbols .

Java документации по java.text.DecimalFormat.parse(java.lang.String, java.text.ParsePosition).

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

Применяется к