PluralRules 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.
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern.
[Android.Runtime.Register("android/icu/text/PluralRules", ApiSince=24, DoNotGenerateAcw=true)]
public class PluralRules : Java.Lang.Object, IDisposable, Java.IO.ISerializable
[<Android.Runtime.Register("android/icu/text/PluralRules", ApiSince=24, DoNotGenerateAcw=true)>]
type PluralRules = class
inherit Object
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Vererbung
- Attribute
- Implementiert
Hinweise
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern.
Regeln werden aus einer Textbeschreibung erstellt, die aus einer Reihe von Schlüsselwörtern und Bedingungen besteht. Die #select Methode untersucht jede Bedingung in der Reihenfolge und gibt das Schlüsselwort für die erste Bedingung zurück, die der Zahl entspricht. Wenn keine Übereinstimmung gefunden wird, #KEYWORD_OTHER wird diese zurückgegeben.
Ein PluralRules-Objekt ist unveränderlich. Sie enthält Caches für Beispielwerte, aber diese werden synchronisiert.
PluralRules ist serialisierbar, sodass sie in Formatierern verwendet werden kann, die serialisierbar sind.
Weitere Informationen, Details und Tipps zum Schreiben von Regeln finden Sie in der LDML-Spezifikation, Teil 3.5 Language Plural Rules
Beispiele:
"one: n is 1; few: n in 2..4"
Dies definiert zwei Regeln für "eins" und "wenige". Die Bedingung für "1" lautet "n ist 1", was bedeutet, dass die Zahl gleich 1 sein muss, damit diese Bedingung übergeben wird. Die Bedingung für "wenige" lautet "n in 2..4", was bedeutet, dass die Zahl zwischen 2 und 4 einschließlich ( und eine ganze Zahl ) liegen muss, damit diese Bedingung übergeben wird. Allen anderen Zahlen wird das Schlüsselwort "other" durch die Standardregel zugewiesen.
"zero: n is 0; one: n is 1; zero: n mod 100 in 1..19"
Dies veranschaulicht, dass dasselbe Schlüsselwort mehrmals definiert werden kann. Jede Regel wird in der Reihenfolge untersucht, und das erste Schlüsselwort, dessen Bedingung übergeben wird, ist die zurückgegebene. Beachten Sie außerdem, dass ein Modul in der letzten Regel auf n angewendet wird. So hält seine Bedingung für 119, 219, 319...
"one: n is 1; few: n mod 10 in 2..4 and n mod 100 not in 12..14"
Dies veranschaulicht die Konjunktion und Negation. Die Bedingung für "wenige" hat zwei Teile, von denen beide erfüllt sein müssen: "n mod 10 in 2..4" und "n mod 100 nicht in 12..14". Der erste Teil wendet einen Modulus auf n vor dem Test an, wie im vorherigen Beispiel gezeigt. Der zweite Teil wendet einen anderen Modulus an und verwendet auch Negation, daher entspricht er allen Zahlen, die nicht in 12, 13, 14, 112, 113, 114, 212, 213, 214...
Syntax:
rules = rule (';' rule)*
rule = keyword ':' condition
keyword = <identifier>
condition = and_condition ('or' and_condition)*
and_condition = relation ('and' relation)*
relation = not? expr not? rel not? range_list
expr = ('n' | 'i' | 'f' | 'v' | 't') (mod value)?
not = 'not' | '!'
rel = 'in' | 'is' | '=' | '≠' | 'within'
mod = 'mod' | '%'
range_list = (range | value) (',' range_list)*
value = digit+
digit = 0|1|2|3|4|5|6|7|8|9
range = value'..'value
Jeder <b>/<b-Begriff> umkehrt die Bedeutung; es sollte jedoch nicht mehr als eine davon geben.
Die Werte "i", "f", "t" und "v" werden wie folgt definiert:
<ul><li>i als ganze Zahl.</li li><>f, um die sichtbaren Dezimalziffern als ganze Zahl zu sein.</li li><>t als sichtbare Dezimalziffern – ohne nachfolgende Nullen – als ganze Zahl zu sein.</li li><>v, um die Anzahl der sichtbaren Bruchziffern zu sein.</li li><>j ist so definiert, dass nur ganze Zahlen übereinstimmen. Das ist j 3 schlägt fehl, wenn v != 0 (z. B. für 3.1 oder 3.0).</li></ul>
Beispiele sind in der folgenden Tabelle:
<table border='1' style="border-collapse:collapse"><tbody><tr><th>n</th><>i</th><>f</th th><>v/th v</th></tr t><><td>1.0</td><td>1</td><td td="right">0</td><td td>1</td></tr><><td>1.00</td><td>1/td td 1</td><td align="right">0</td><td>2</td></tr><><td>1,3</td td><>1</td><td td td align="right">3</td><td>1</td></tr><><td>1,03</td td><td>1</td td><align="right">3</td><td td>2</td></tr tr><><td>1.23</td><td>1</td><td td align="right">23</td td><>2</td></tr/tbody><></table>
Ein "Bezeichner" ist eine Abfolge von Zeichen, die nicht über die Unicode-Pattern_Syntax- oder Pattern_White_Space-Eigenschaften verfügen.
Der Unterschied zwischen "in" und "innerhalb" besteht darin, dass "in" nur ganze Zahlen im angegebenen Bereich enthält, während "innerhalb" alle Werte enthält. Die Verwendung von "innerhalb" mit einer range_list, die vollständig aus Werten besteht, ist identisch mit der Verwendung von "in" (es ist kein Fehler).
Java Dokumentation für android.icu.text.PluralRules.
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 |
|---|---|
| PluralRules(IntPtr, JniHandleOwnership) |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. |
Felder
| Name | Beschreibung |
|---|---|
| KeywordFew |
Allgemeiner Name für das "Paucal" oder andere spezielle Pluralform. |
| KeywordMany |
Allgemeiner Name für die arabische (11 bis 99) Pluralform. |
| KeywordOne |
Allgemeiner Name für die Pluralform 'singular'. |
| KeywordOther |
Allgemeiner Name für das Standard-Plural-Formular. |
| KeywordTwo |
Allgemeiner Name für die "duale" Pluralform. |
| KeywordZero |
Allgemeiner Name für das Pluralformular "null". |
| NoUniqueValue |
Der Wert, der zurückgegeben |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Class |
Gibt die Laufzeitklasse dieses Werts |
| Default |
Die Standardregeln, die eine beliebige Zahl akzeptieren und zurückgeben |
| 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 |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. (Geerbt von JavaObject) |
| JniPeerMembers |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. |
| Keywords |
Gibt einen Satz aller Regelstichwörter zurück, die in diesem |
| PeerReference |
Ruft den JNI-Objektverweis für diesen Java Peer ab. (Geerbt von Object) |
| ThresholdClass |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. |
| ThresholdType |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. |
Methoden
| Name | Beschreibung |
|---|---|
| Clone() |
Erstellt und gibt eine Kopie dieses Objekts zurück. (Geerbt von Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. (Geerbt von JavaObject) |
| CreateRules(String) |
Erstellt eine PluralRules aus einer Beschreibung, wenn sie analysiert werden kann, andernfalls wird NULL zurückgegeben. |
| 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() |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. (Geerbt von JavaObject) |
| Equals(Object) |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. (Geerbt von JavaObject) |
| Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist. (Geerbt von Object) |
| Equals(PluralRules) |
Gibt true zurück, wenn rhs gleich diesem ist. |
| ForLocale(Locale, PluralRules+PluralType) |
Bietet Zugriff auf die vordefinierten PluralRules für ein bestimmtes Gebietsschema und den Pluraltyp. |
| ForLocale(Locale) |
Bietet Zugriff auf die vordefinierte Kardinalzahl für eine bestimmte . |
| ForLocale(ULocale, PluralRules+PluralType) |
Bietet Zugriff auf die vordefinierten PluralRules für ein bestimmtes Gebietsschema und den Pluraltyp. |
| ForLocale(ULocale) |
Bietet Zugriff auf die vordefinierte Kardinalzahl |
| GetAllKeywordValues(String) |
Gibt alle Werte zurück, die dieses Schlüsselwort auslösen, oder null, wenn die Anzahl solcher Werte unbegrenzt ist. |
| GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
| GetSamples(String) |
Gibt eine Liste ganzzahliger Werte zurück, für die select() dieses Schlüsselwort zurückgeben würde, oder null, wenn das Schlüsselwort nicht definiert ist. |
| GetUniqueKeywordValue(String) |
Gibt den eindeutigen Wert zurück, mit dem dieses Schlüsselwort übereinstimmt, oder |
| 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) |
| ParseDescription(String) |
Analysiert eine Pluralregelnbeschreibung und gibt eine PluralRules zurück. |
| Select(Double) |
Gibt bei einer Gleitkommazahl das Schlüsselwort der ersten Regel zurück, die für die Zahl gilt. |
| Select(FormattedNumber) |
Gibt bei einer formatierten Zahl das Schlüsselwort der ersten Regel zurück, die für die Zahl gilt. |
| Select(FormattedNumberRange) |
Gibt bei einem formatierten Zahlenbereich die gesamte Pluralform des Bereichs zurück. |
| SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. (Geerbt von JavaObject) |
| 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() |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. (Geerbt von JavaObject) |
| IJavaPeerable.Finalized() |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. (Geerbt von JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. (Geerbt von JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. (Geerbt von JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. (Geerbt von JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. (Geerbt von JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. |
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) |
Definiert Regeln zum Zuordnen nicht negativer numerischer Werte zu einer kleinen Gruppe von Schlüsselwörtern. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |