Linguaggio

DecimalFormat.Parse(String, ParsePosition) Metodo

Definizione

Analizza il testo da una stringa per produrre un oggetto 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

Parametri

text
String

stringa da analizzare

pos
ParsePosition

Oggetto ParsePosition con informazioni sull'indice e sull'indice degli errori, come descritto in precedenza.

Valori restituiti

valore analizzato o null se l'analisi ha esito negativo

Attributi

Commenti

Analizza il testo da una stringa per produrre un oggetto Number.

Il metodo tenta di analizzare il testo a partire dall'indice specificato da pos. Se l'analisi ha esito positivo, l'indice di pos viene aggiornato all'indice dopo l'ultimo carattere utilizzato (l'analisi non usa necessariamente tutti i caratteri fino alla fine della stringa) e viene restituito il numero analizzato. L'oggetto aggiornato pos può essere usato per indicare il punto iniziale per la chiamata successiva a questo metodo. Se si verifica un errore, l'indice di non viene modificato, l'indice di pos errore di pos viene impostato sull'indice del carattere in cui si è verificato l'errore e viene restituito Null.

La sottoclasse restituita dipende dal valore di #isParseBigDecimal e dalla stringa da analizzare. <ul>li Se è false (impostazione predefinita), la maggior parte dei valori integer viene restituita come Long oggetti, indipendentemente dal modo in cui vengono scritti: "17" ed "17.000" entrambi analizzano in Long(17).isParseBigDecimal()>< I valori che non possono essere inseriti in un Long oggetto vengono restituiti come Doubles. Sono inclusi i valori con una parte frazionaria, valori infiniti, NaNe il valore -0.0. DecimalFormatnon <stabilisce se<>> restituire o Double in Long base alla presenza di un separatore decimale nella stringa di origine. In questo modo si impedisce l'analisi accurata dei numeri interi che eseguono l'overflow della mantissa di un double, ad esempio "-9,223,372,036,854,775,808.00", .

I chiamanti possono usare i Number metodi doubleValue, longValuee così via, per ottenere il tipo desiderato. <li>Se isParseBigDecimal() è true, i valori vengono restituiti come BigDecimal oggetti. I valori sono quelli costruiti da per le stringhe corrispondenti in formato indipendente dalle java.math.BigDecimal#BigDecimal(String) impostazioni locali. I case speciali negativi e positivi infinito e NaN vengono restituiti come Double istanze che contengono i valori delle costanti corrispondenti Double . </ul>

DecimalFormat analizza tutti i caratteri Unicode che rappresentano cifre decimali, come definito da Character.digit(). Inoltre, DecimalFormat riconosce anche come cifre i dieci caratteri consecutivi a partire dalla cifra zero localizzata definita nell'oggetto DecimalFormatSymbols .

Documentazione java per java.text.DecimalFormat.parse(java.lang.String, java.text.ParsePosition).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a