Sprache

ChoiceFormat Klasse

Definition

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

[Android.Runtime.Register("java/text/ChoiceFormat", DoNotGenerateAcw=true)]
public class ChoiceFormat : Java.Text.NumberFormat
[<Android.Runtime.Register("java/text/ChoiceFormat", DoNotGenerateAcw=true)>]
type ChoiceFormat = class
    inherit NumberFormat
Vererbung
Attribute

Hinweise

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen. Es wird in der Regel für die MessageFormat Behandlung von Pluralen verwendet. Die Auswahl wird mit einer aufsteigenden Liste von Doubles angegeben, wobei jedes Element ein halb offenes Intervall bis zum nächsten Element angibt: <Blockquote>

X matches j if and only if limit[j] &le; X &lt; limit[j+1]

</blockquote> If there is no match, then either the first or last index is used, depending on whether the number (X) is too low or too high. Wenn sich das Limitarray nicht in aufsteigender Reihenfolge befindet, sind die Formatierungsergebnisse falsch. ChoiceFormat akzeptiert &#92;u221E auch als Äquivalent zu Infinity(INF).

<strong>Note:</strong>ChoiceFormat unterscheidet sich von den anderen Format Klassen darin, dass Sie ein ChoiceFormat Objekt mit einem Konstruktor erstellen (nicht mit einer getInstance Style Factory-Methode). Die Factorymethoden sind nicht erforderlich, da ChoiceFormat für ein bestimmtes Gebietsschema keine komplexe Einrichtung erforderlich ist. Tatsächlich ChoiceFormat implementiert kein gebietsschemaspezifisches Verhalten.

Beim Erstellen eines ChoiceFormat, müssen Sie ein Array von Formaten und ein Array von Grenzwerten angeben. Die Länge dieser Arrays muss identisch sein. Beispiel: <ul><li><em>limits</em> = {1,2,3,4,5,6,7}<br><em>formats</em> = {"Sun","Mon","Tue","Wed","Thur","Fri","Sat"}<li><em>limits</em> = {0, 1, ChoiceFormat.nextDouble(1)}<br><em>formats</em> = {"no files", "one file", "many files"}<br> (nextDouble kann verwendet werden, um das nächste höhere Double zu erhalten, um das halb offene Intervall zu machen.) </ul>

Hier ist ein einfaches Beispiel, das Formatierung und Analyse zeigt: <Blockquote>

{@code
            double[] limits = {1,2,3,4,5,6,7};
            String[] dayOfWeekNames = {"Sun","Mon","Tue","Wed","Thur","Fri","Sat"};
            ChoiceFormat form = new ChoiceFormat(limits, dayOfWeekNames);
            ParsePosition status = new ParsePosition(0);
            for (double i = 0.0; i <= 8.0; ++i) {
                status.setIndex(0);
                System.out.println(i + " -> " + form.format(i) + " -> "
                                         + form.parse(form.format(i),status));
            }
            }

</blockquote Hier ist ein komplexeres Beispiel mit einem Musterformat: >Blockquote<>

{@code
            double[] filelimits = {0,1,2};
            String[] filepart = {"are no files","is one file","are {2} files"};
            ChoiceFormat fileform = new ChoiceFormat(filelimits, filepart);
            Format[] testFormats = {fileform, null, NumberFormat.getInstance()};
            MessageFormat pattform = new MessageFormat("There {0} on {1}");
            pattform.setFormats(testFormats);
            Object[] testArgs = {null, "ADisk", null};
            for (int i = 0; i < 4; ++i) {
                testArgs[0] = new Integer(i);
                testArgs[2] = testArgs[0];
                System.out.println(pattform.format(testArgs));
            }
            }

</blockquote>

Das Angeben eines Musters für ChoiceFormat-Objekte ist relativ einfach. Beispiel: <Blockquote>

{@code
            ChoiceFormat fmt = new ChoiceFormat(
                 "-1#is negative| 0#is zero or fraction | 1#is one |1.0<is 1+ |2#is two |2<is more than 2.");
            System.out.println("Formatter Pattern : " + fmt.toPattern());

            System.out.println("Format with -INF : " + fmt.format(Double.NEGATIVE_INFINITY));
            System.out.println("Format with -1.0 : " + fmt.format(-1.0));
            System.out.println("Format with 0 : " + fmt.format(0));
            System.out.println("Format with 0.9 : " + fmt.format(0.9));
            System.out.println("Format with 1.0 : " + fmt.format(1));
            System.out.println("Format with 1.5 : " + fmt.format(1.5));
            System.out.println("Format with 2 : " + fmt.format(2));
            System.out.println("Format with 2.1 : " + fmt.format(2.1));
            System.out.println("Format with NaN : " + fmt.format(Double.NaN));
            System.out.println("Format with +INF : " + fmt.format(Double.POSITIVE_INFINITY));
            }

</blockquote Und das Ausgabeergebnis würde wie folgt aussehen: >blockquote<>

{@code
            Format with -INF : is negative
            Format with -1.0 : is negative
            Format with 0 : is zero or fraction
            Format with 0.9 : is zero or fraction
            Format with 1.0 : is one
            Format with 1.5 : is 1+
            Format with 2 : is two
            Format with 2.1 : is more than 2.
            Format with NaN : is negative
            Format with +INF : is more than 2.
            }

</blockquote>

<h2>"synchronization">Synchronization</h2>

Auswahlformate werden 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.

In 1.1 hinzugefügt.

Java Dokumentation für java.text.ChoiceFormat.

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
ChoiceFormat(Double[], String[])

Erstellt mit den Grenzwerten und den entsprechenden Formaten.

ChoiceFormat(IntPtr, JniHandleOwnership)

Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen.

ChoiceFormat(String)

Erstellt mit Grenzwerten und entsprechenden Formaten basierend auf dem Muster.

Felder

Name Beschreibung
FractionField

Feldkonstante zum Erstellen eines FieldPosition-Objekts.

(Geerbt von NumberFormat)
IntegerField

Feldkonstante zum Erstellen eines FieldPosition-Objekts.

(Geerbt von NumberFormat)

Eigenschaften

Name Beschreibung
Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Currency

Ruft die Währung ab, die von diesem Zahlenformat beim Formatieren von Währungswerten verwendet wird. -oder- Legt die Währung fest, die von diesem Zahlenformat beim Formatieren von Währungswerten verwendet wird.

(Geerbt von NumberFormat)
GroupingUsed

Gibt true zurück, wenn gruppieren in diesem Format verwendet wird. -or- Legen Sie fest, ob gruppieren in diesem Format verwendet wird.

(Geerbt von NumberFormat)
Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
JniIdentityHashCode

Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist.

(Geerbt von Object)
JniManagedPeerState

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von JavaObject)
JniPeerMembers

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

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.

(Geerbt von NumberFormat)
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.

(Geerbt von NumberFormat)
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.

(Geerbt von NumberFormat)
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.

(Geerbt von NumberFormat)
ParseIntegerOnly

Gibt true zurück, wenn in diesem Format Zahlen nur als ganze Zahlen analysiert werden. -or- Legt fest, ob Zahlen nur als ganze Zahlen analysiert werden sollen.

(Geerbt von NumberFormat)
PeerReference

Ruft den JNI-Objektverweis für diesen Java Peer ab.

(Geerbt von Object)
RoundingMode

Ruft den java.math.RoundingMode in diesem NumberFormat verwendeten Ab. -oder- Legt den java.math.RoundingMode in diesem NumberFormat verwendeten Wert fest.

(Geerbt von NumberFormat)
ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

Methoden

Name Beschreibung
ApplyPattern(String)

Legt das Muster fest.

Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von _Format)
Construct(JniObjectReference, JniObjectReferenceOptions)

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von JavaObject)
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()

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von JavaObject)
Equals(Object)

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von JavaObject)
Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
Format(Double, StringBuffer, FieldPosition)

Gibt ein Muster mit formatiertem Double zurück.

Format(Double)

Spezialisierung des Formats.

(Geerbt von NumberFormat)
Format(Int64, StringBuffer, FieldPosition)

Spezialisierung des Formats.

Format(Int64)

Spezialisierung des Formats.

(Geerbt von NumberFormat)
Format(Object, StringBuffer, FieldPosition)

Formatiert eine Zahl und fügt den resultierenden Text an den angegebenen Zeichenfolgenpuffer an.

(Geerbt von NumberFormat)
Format(Object)

Formatiert ein Objekt, um eine Zeichenfolge zu erzeugen.

(Geerbt von _Format)
FormatToCharacterIterator(Object)

Formatiert ein Objekt, das ein AttributedCharacterIteratorObjekt erzeugt.

(Geerbt von _Format)
GetFormats()

Gibt die Zeichenfolgen zurück, die den Bereichen dieses Bereichs zugeordnet sind ChoiceFormat.

GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
GetLimits()

Gibt die Grenzwerte dieses Werts ChoiceFormatzurück.

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)
NextDouble(Double, Boolean)

Sucht den kleinsten doppelten größer als d (falls positive vorhanden true) oder den größten Doppelten kleiner als d (falls positive vorhanden false).

NextDouble(Double)

Sucht den kleinsten doppelt größer als d.

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)

Analysiert eine Zahl aus dem Eingabetext.

Parse(String)

Analysiert Text vom Anfang der angegebenen Zeichenfolge, um eine Zahl zu erzeugen.

(Geerbt von NumberFormat)
ParseObject(String, ParsePosition)

Analysiert Text aus einer Zeichenfolge, um eine Number.

(Geerbt von NumberFormat)
ParseObject(String)

Analysiert Text vom Anfang der angegebenen Zeichenfolge, um ein Objekt zu erzeugen.

(Geerbt von _Format)
PreviousDouble(Double)

Sucht den größten doppelt kleiner als d.

SetChoices(Double[], String[])

Legen Sie die Auswahlmöglichkeiten fest, die in der Formatierung verwendet werden sollen.

SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von JavaObject)
ToArray<T>()

Erstellt ein verwaltetes Array aus diesem Java Arraywrapper.

(Geerbt von Object)
ToPattern()

Ruft das Muster ab.

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()

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von JavaObject)
IJavaPeerable.Finalized()

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von JavaObject)
IJavaPeerable.UnregisterFromRuntime()

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

(Geerbt von _Format)

Erweiterungsmethoden

Name Beschreibung
GetJniTypeName(IJavaPeerable)

Ruft den JNI-Namen des Typs der Instanz selfab.

JavaAs<TResult>(IJavaPeerable)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

A ChoiceFormat ermöglicht es Ihnen, ein Format an einen Zahlenbereich anzufügen.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

Gilt für: