NumberFormat Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.NumberFormat.
[Android.Runtime.Register("android/icu/text/NumberFormat", ApiSince=24, DoNotGenerateAcw=true)]
public abstract class NumberFormat : Android.Icu.Text.UFormat
[<Android.Runtime.Register("android/icu/text/NumberFormat", ApiSince=24, DoNotGenerateAcw=true)>]
type NumberFormat = class
inherit UFormat
- Vererbung
- Abgeleitet
- Attribute
Hinweise
<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.NumberFormat. Methoden, Felder und andere für ICU spezifische Funktionen werden als "<strong>[icu]</strong>" bezeichnet.
<strong>IMPORTANT:</strong> New users are strongly encouragedly to see if NumberFormatter fits their use case. Obwohl nicht veraltet, wird diese Klasse, NumberFormat, nur für java.text.NumberFormat-Kompatibilität bereitgestellt.
<Hr>
NumberFormat ist die abstrakte Basisklasse für alle Zahlenformate. Diese Klasse stellt die Schnittstelle zum Formatieren und Analysieren von Zahlen bereit.
NumberFormat Stellt außerdem Methoden zum Bestimmen der Gebietsschemas mit Zahlenformaten und deren Namen bereit.
NumberFormat Hilft Ihnen, Zahlen für jedes Gebietsschema zu formatieren und zu analysieren. Ihr Code kann vollständig unabhängig von den Gebietsschemakonventionen für Dezimalzeichen, Tausendertrennzeichen oder sogar die verwendeten dezimalen Ziffern sein oder ob das Zahlenformat sogar dezimal ist.
Um eine Zahl für das aktuelle Gebietsschema zu formatieren, verwenden Sie eine der Factoryklassenmethoden: <Blockquote>
myString = NumberFormat.getInstance().format(myNumber);
</blockquote> Wenn Sie mehrere Zahlen formatieren, ist es effizienter, das Format abzurufen und mehrmals zu verwenden, damit das System die Informationen über die lokale Sprache und die Länderkonventionen nicht mehrmals abrufen muss. <Blockquote>
NumberFormat nf = NumberFormat.getInstance();
for (int i = 0; i < a.length; ++i) {
output.println(nf.format(myNumber[i]) + "; ");
}
</blockquote> To format a number for a different Locale, specify it in the call to getInstance.
<Blockquote>
NumberFormat nf = NumberFormat.getInstance(Locale.FRENCH);
</blockquote> You can also use a NumberFormat to parse numbers: <blockquote>
myNumber = nf.parse(myString);
</blockquote> Use getInstance or getNumberInstance to get the normal number format. Dient getIntegerInstance zum Abrufen eines ganzzahligen Zahlenformats. Wird getCurrencyInstance verwendet, um das Währungszahlenformat abzurufen. Und verwenden Sie getPercentInstance zum Abrufen eines Formats zum Anzeigen von Prozentsätzen. Einige Factorymethoden befinden sich in Unterklassen von NumberFormat. Bei diesem Format wird ein Bruchteil wie 0,53 als 53%angezeigt.
Ab ICU 4.2 können Sie getInstance() verwenden, indem Sie einen "style" als Parameter übergeben, um die richtige Instanz abzurufen. Verwenden Sie z. B. getInstance(... NUMBERSTYLE) zum Abrufen des normalen Zahlenformats getInstance(... PERCENTSTYLE) zum Abrufen eines Formats zum Anzeigen von Prozentsätzen, getInstance(... SCIENTIFICSTYLE) zum Abrufen eines Formats für die Anzeige der wissenschaftlichen Zahl, getInstance(... INTEGERSTYLE) zum Abrufen eines ganzzahligen Zahlenformats, getInstance(... CURRENCYSTYLE) zum Abrufen des Währungszahlenformats, in dem die Währung durch das Symbol dargestellt wird, z. B. "$3,00". getInstance(... ISOCURRENCYSTYLE) zum Abrufen des Währungszahlenformats, in dem die Währung durch den ISO-Code dargestellt wird, z. B. "USD3.00". getInstance(... PLURALCURRENCYSTYLE) zum Abrufen des Währungszahlenformats, in dem die Währung durch ihren vollständigen Namen im Pluralformat dargestellt wird, z. B. "3,00 US-Dollar" oder "1,00 US-Dollar".
Sie können auch die Anzeige von Zahlen mit z. B. Methoden setMinimumFractionDigitssteuern. Wenn Sie noch mehr Kontrolle über das Format oder die Analyse wünschen oder Ihren Benutzern mehr Kontrolle geben möchten, können Sie versuchen, die NumberFormat Von den Factorymethoden in eine DecimalFormatzu konvertieren. Dies wird für die überwiegende Mehrheit der Gebietsschemas funktionieren; Denken Sie einfach daran, es in einen try Block zu setzen, falls Sie auf eine ungewöhnliche stoßen.
NumberFormat ist so konzipiert, dass einige Steuerelemente für formatierungen und andere für die Analyse funktionieren. Im Folgenden finden Sie die detaillierte Beschreibung für jede dieser Steuerelementmethoden:
setParseIntegerOnly : wirkt sich nur auf die Analyse aus, z. B. wenn "3456.78" -> 3456 (und hinterlässt die Analyseposition direkt nach '6') wenn falsch, "3456.78" -> 3456.78 (und hinterlässt die Analyseposition direkt nach '8') Dies ist unabhängig von der Formatierung. Wenn Sie keinen Dezimalkommapunkt anzeigen möchten, an dem nach dem Dezimalkomma möglicherweise keine Ziffern vorhanden sind, verwenden Sie "SetDecimalSeparatorAlwaysShown" im DecimalFormat.
Sie können auch Formen der parse Und format Methoden verwenden ParsePosition und FieldPosition ihnen ermöglichen: <ul><li> schrittweise durch Teile einer Zeichenfolge <li> ausrichten den Dezimalkommapunkt und andere Bereiche </ul> Beispielsweise können Sie Zahlen auf zwei Arten ausrichten: <ol><li> Wenn Sie eine monospaced Schriftart mit Abstand für die Ausrichtung verwenden, können Sie den FieldPosition Formataufruf übergeben, mit field = INTEGER_FIELD. Bei der Ausgabe getEndIndex wird der Offset zwischen dem letzten Zeichen der ganzen Zahl und dem Dezimalzeichen festgelegt. Fügen Sie Leerzeichen (desiredSpaceCount - getEndIndex) am Anfang der Zeichenfolge hinzu.
<li> Wenn Sie proportionale Schriftarten verwenden, messen Sie anstelle des Abstands mit Leerzeichen die Breite der Zeichenfolge in Pixeln von Anfang an.getEndIndex Verschieben Sie dann den Stift nach (desiredPixelWidth - widthToAlignmentPoint), bevor Sie den Text zeichnen. Es funktioniert auch, wenn es keine Dezimalzahl gibt, aber möglicherweise zusätzliche Zeichen am Ende, z. B. mit Klammern in negativen Zahlen: "(12)" für -12.
</ol>
<h3-Synchronisierung></h3>
Zahlenformate werden in der Regel nicht synchronisiert. Es wird empfohlen, separate Formatinstanzen für jeden Thread zu erstellen. Wenn mehrere Threads gleichzeitig auf ein Format zugreifen, muss es extern synchronisiert werden.
<h4>DecimalFormat</h4>
DecimalFormat ist die konkrete Implementierung von NumberFormat, und die NumberFormat-API ist im Wesentlichen eine Abstraktion von der API von DecimalFormat. Weitere Informationen zu dieser API finden Sie unter DecimalFormat.
siehe "DecimalFormat" siehe "java.text.ChoiceFormat"
Java Dokumentation für android.icu.text.NumberFormat.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Konstruktoren
| Name | Beschreibung |
|---|---|
| NumberFormat() |
Leerer Konstruktor. |
| NumberFormat(IntPtr, JniHandleOwnership) |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
Felder
| Name | Beschreibung |
|---|---|
| Accountingcurrencystyle |
Veraltet.
<strong>[icu]</strong> Constant to specify currency style of format which uses currency symbol to represent currency for accounting, for example: "($3. |
| Cashcurrencystyle |
Veraltet.
<strong>[icu]</strong> Constant to specify currency cash style of format which uses currency ISO code to represent currency, for example: "NT$3" instead of "NT$3" instead of "NT$3. |
| Currencystyle |
Veraltet.
<strong>[icu]</strong> Constant to specify general currency style of format. |
| FractionField |
Veraltet.
Feldkonstante zum Erstellen eines FieldPosition-Objekts. |
| IntegerField |
Veraltet.
Feldkonstante zum Erstellen eines FieldPosition-Objekts. |
| Integerstyle |
Veraltet.
<strong>[icu]</strong> Constant to specify a integer number style format. |
| Isocurrencystyle |
Veraltet.
<strong>[icu]</strong> Constant to specify currency style of format which uses currency ISO code to represent currency, for example: "USD3. |
| Numberstyle |
Veraltet.
<strong>[icu]</strong> Constant to specify normal number style of format. |
| Percentstyle |
Veraltet.
<strong>[icu]</strong> Constant to specify a style of format to display percent. |
| Pluralcurrencystyle |
Veraltet.
<strong>[icu]</strong> Constant to specify currency style of format which uses currency long name with plural format to represent currency, for example, "3. |
| Scientificstyle |
Veraltet.
<strong>[icu]</strong> Constant to specify a style of format to display scientific number. |
| Standardcurrencystyle |
Veraltet.
<strong>[icu]</strong> Constant to specify currency style of format which uses currency symbol to represent currency, for example "$3. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Class |
Gibt die Laufzeitklasse dieses Werts |
| Currency |
Gibt das Objekt zurück, das |
| CurrencyInstance |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GroupingUsed |
Gibt true zurück, wenn gruppieren in diesem Format verwendet wird. -or- Legt fest, ob gruppieren in diesem Format verwendet wird. |
| Handle |
Das Handle für die zugrunde liegende Android-Instanz. (Geerbt von Object) |
| Instance |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| IntegerInstance |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| JniIdentityHashCode |
Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist. (Geerbt von Object) |
| JniManagedPeerState |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| JniPeerMembers |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| MaximumFractionDigits |
Gibt die maximale Anzahl von Ziffern zurück, die im Bruchteil einer Zahl zulässig sind. -or- Legt die maximale Anzahl von Ziffern fest, die im Bruchteil einer Zahl zulässig sind. |
| MaximumIntegerDigits |
Gibt die maximale Anzahl von Ziffern zurück, die im ganzzahligen Teil einer Zahl zulässig sind. -or- Legt die maximale Anzahl von Ziffern fest, die im ganzzahligen Teil einer Zahl zulässig sind. |
| MinimumFractionDigits |
Gibt die minimale Anzahl von Ziffern zurück, die im Bruchteil einer Zahl zulässig sind. -or- Legt die Mindestanzahl der ziffern fest, die im Bruchteil einer Zahl zulässig sind. |
| MinimumIntegerDigits |
Gibt die minimale Anzahl von Ziffern zurück, die im ganzzahligen Teil einer Zahl zulässig sind. -or- Legt die mindestanzahl der im ganzzahligen Teil einer Zahl zulässigen Ziffern fest. |
| NumberInstance |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| ParseIntegerOnly |
Gibt true zurück, wenn in diesem Format Zahlen nur als ganze Zahlen analysiert werden. -or- Legt fest, ob der Bruchteil einer Zahl beim Analysieren ignoriert werden soll (Standardwert ist false). |
| ParseStrict |
<strong>[icu]</strong> Gibt zurück, ob die strenge Analyse wirksam ist. -or- <strong>[icu]</strong> Legt fest, ob strenge Analyse wirksam ist. |
| PeerReference |
Ruft den JNI-Objektverweis für diesen Java Peer ab. (Geerbt von Object) |
| PercentInstance |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| RoundingMode |
Gibt den Rundungsmodus zurück, der in diesem NumberFormat verwendet wird. -oder- Legen Sie den in diesem NumberFormat verwendeten Rundungsmodus fest. |
| ScientificInstance |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| ThresholdClass |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| ThresholdType |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
Methoden
| Name | Beschreibung |
|---|---|
| Clone() |
Erstellt und gibt eine Kopie dieses Objekts zurück. (Geerbt von _Format) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| Dispose() |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| Dispose(Boolean) |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| DisposeUnlessReferenced() |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| Equals(Object) |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist. (Geerbt von Object) |
| Format(BigDecimal, StringBuffer, FieldPosition) |
<strong>[icu]</strong> Formatiert eine ICU BigDecimal. |
| Format(BigDecimal, StringBuffer, FieldPosition) |
<strong>[icu]</strong> Formatiert ein BigDecimal. |
| Format(BigDecimal) |
Convenience-Methode zum Formatieren eines BigDecimal-Werts. |
| Format(BigDecimal) |
<strong>[icu]</strong> Convenience-Methode zum Formatieren einer ICU BigDecimal. |
| Format(BigInteger, StringBuffer, FieldPosition) |
<strong>[icu]</strong> Formats a BigInteger. |
| Format(BigInteger) |
<strong>[icu]</strong> Convenience-Methode zum Formatieren eines BigInteger. |
| Format(CurrencyAmount, StringBuffer, FieldPosition) |
<strong>[icu]</strong> Formatiert eine CurrencyAmount-Bereitstellung. |
| Format(CurrencyAmount) |
<strong>[icu]</strong> Convenience-Methode zum Formatieren einer CurrencyAmount-Methode. |
| Format(Double, StringBuffer, FieldPosition) |
Spezialisierung des Formats. |
| Format(Double) |
Spezialisierung des Formats. |
| Format(Int64, StringBuffer, FieldPosition) |
Spezialisierung des Formats. |
| Format(Int64) |
Spezialisierung des Formats. |
| Format(Object, StringBuffer, FieldPosition) |
Formatiert eine Zahl und fügt den resultierenden Text an den angegebenen Zeichenfolgenpuffer an. |
| Format(Object) |
Formatiert ein Objekt, um eine Zeichenfolge zu erzeugen. (Geerbt von _Format) |
| FormatToCharacterIterator(Object) |
Formatiert ein Objekt, das ein |
| GetAvailableLocales() |
Gibt die Liste der Gebietsschemas zurück, für die NumberFormats verfügbar sind. |
| GetContext(DisplayContext+Type) |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| GetCurrencyInstance(Locale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetCurrencyInstance(ULocale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
| GetInstance(Locale, NumberFormatStyles) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetInstance(Locale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetInstance(NumberFormatStyles) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetInstance(ULocale, NumberFormatStyles) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetInstance(ULocale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetIntegerInstance(Locale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetIntegerInstance(ULocale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetNumberInstance(Locale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetNumberInstance(ULocale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetPattern(ULocale, Int32) |
Gibt das Muster für das angegebene Gebietsschema und die angegebene Auswahl zurück. |
| GetPercentInstance(Locale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetPercentInstance(ULocale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetScientificInstance(Locale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| GetScientificInstance(ULocale) |
<starke>Notiz:</starke> Neue Benutzer werden dringend empfohlen, anstelle von NumberFormat zu verwenden |
| JavaFinalize() |
Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind. (Geerbt von Object) |
| Notify() |
Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet. (Geerbt von Object) |
| NotifyAll() |
Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten. (Geerbt von Object) |
| Parse(String, ParsePosition) |
Gibt einen Long-Wert zurück (z. B. |
| Parse(String) |
Analysiert Text vom Anfang der angegebenen Zeichenfolge, um eine Zahl zu erzeugen. |
| ParseCurrency(ICharSequence, ParsePosition) |
Analysiert Text aus der angegebenen Zeichenfolge als CurrencyAmount. |
| ParseCurrency(String, ParsePosition) |
Analysiert Text aus der angegebenen Zeichenfolge als CurrencyAmount. |
| ParseObject(String, ParsePosition) |
Analysiert Text aus einer Zeichenfolge, um eine Zahl zu erzeugen. |
| ParseObject(String) |
Analysiert Text vom Anfang der angegebenen Zeichenfolge, um ein Objekt zu erzeugen. (Geerbt von _Format) |
| SetContext(DisplayContext) |
<strong>[icu]</strong> Legen Sie einen bestimmten DisplayContext-Wert im Formatierer fest, z. B. CAPITALIZATION_FOR_STANDALONE. |
| SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| ToArray<T>() |
Erstellt ein verwaltetes Array aus diesem Java Arraywrapper. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolgendarstellung des Objekts zurück. (Geerbt von Object) |
| UnregisterFromRuntime() |
Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf. (Geerbt von Object) |
| Wait() |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><> (Geerbt von Object) |
| Wait(Int64, Int32) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
| Wait(Int64) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| IJavaPeerable.Disposed() |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| IJavaPeerable.Finalized() |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| IJavaPeerable.JniObjectReferenceControlBlock |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| IJavaPeerable.UnregisterFromRuntime() |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ruft den JNI-Namen des Typs der Instanz |
| JavaAs<TResult>(IJavaPeerable) |
Versuchen Sie, die Eingabe |
| JavaCast<TResult>(IJavaObject) |
Führt eine android-laufzeitgecheckte Typkonvertierung aus. |
| JavaCast<TResult>(IJavaObject) |
<strong>[icu enhancement]</strong> ICU Ersetzung für |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |