ChoiceFormat Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
A ChoiceFormat vous permet d’attacher un format à une plage de nombres.
[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
- Héritage
- Attributs
Remarques
A ChoiceFormat vous permet d’attacher un format à une plage de nombres. Il est généralement utilisé dans un MessageFormat pour gérer les pluriels. Le choix est spécifié avec une liste croissant de doubles, où chaque élément spécifie un intervalle demi-ouvert jusqu’à l’élément suivant : <blockquote>
X matches j if and only if limit[j] ≤ X < limit[j+1]
</blockquote> S’il n’existe aucune correspondance, le premier ou le dernier index est utilisé, selon que le nombre (X) est trop faible ou trop élevé. Si le tableau de limites n’est pas dans l’ordre croissant, les résultats de la mise en forme sont incorrects. ChoiceFormat accepte \u221E également comme équivalent à infinity(INF).
<
>strong Remarque :</strong>ChoiceFormat diffère des autres Format classes dans lesquelles vous créez un ChoiceFormat objet avec un constructeur (et non avec une getInstance méthode de fabrique de style). Les méthodes de fabrique ne sont pas nécessaires, car ChoiceFormat aucune configuration complexe n’est nécessaire pour un paramètre régional donné. En fait, ChoiceFormat n’implémente aucun comportement spécifique aux paramètres régionaux.
Lors de la création d’un ChoiceFormat, vous devez spécifier un tableau de formats et un tableau de limites. La longueur de ces tableaux doit être la même. Par exemple, <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 peut être utilisé pour obtenir le double supérieur suivant, pour rendre l’intervalle demi-ouvert.) </ul>
Voici un exemple simple qui montre la mise en forme et l’analyse : <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> Voici un exemple plus complexe, avec un format de modèle : <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>
La spécification d’un modèle pour les objets ChoiceFormat est assez simple. Par exemple : <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> Et le résultat de sortie ressemble à ce qui suit : <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>
Les formats de choix ne sont pas synchronisés. Il est recommandé de créer des instances de format distinctes pour chaque thread. Si plusieurs threads accèdent simultanément à un format, il doit être synchronisé en externe.
Ajouté dans la version 1.1.
Documentation Java pour java.text.ChoiceFormat.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.
Constructeurs
| Nom | Description |
|---|---|
| ChoiceFormat(Double[], String[]) |
Construits avec les limites et les formats correspondants. |
| ChoiceFormat(IntPtr, JniHandleOwnership) |
Constructeur utilisé lors de la création de représentations managées d’objets JNI ; appelée par le runtime. |
| ChoiceFormat(String) |
Construit avec des limites et des formats correspondants en fonction du modèle. |
Champs
| Nom | Description |
|---|---|
| FractionField |
Constante de champ utilisée pour construire un objet FieldPosition. (Hérité de NumberFormat) |
| IntegerField |
Constante de champ utilisée pour construire un objet FieldPosition. (Hérité de NumberFormat) |
Propriétés
| Nom | Description |
|---|---|
| Class |
Retourne la classe runtime de ce |
| Currency |
Obtient la devise utilisée par ce format de nombre lors de la mise en forme des valeurs monétaires. -ou- Définit la devise utilisée par ce format de nombre lors de la mise en forme des valeurs monétaires. (Hérité de NumberFormat) |
| GroupingUsed |
Retourne true si le regroupement est utilisé dans ce format. -ou- Définissez si le regroupement sera utilisé ou non dans ce format. (Hérité de NumberFormat) |
| Handle |
Handle de l’instance Android sous-jacente. (Hérité de Object) |
| JniIdentityHashCode |
Obtient le code de hachage d’identité affecté à cet homologue Java par le runtime d’interopérabilité. (Hérité de Object) |
| JniManagedPeerState |
A |
| JniPeerMembers |
A |
| MaximumFractionDigits |
Retourne le nombre maximal de chiffres autorisés dans la partie fraction d’un nombre. -ou- Définit le nombre maximal de chiffres autorisés dans la partie fraction d’un nombre. (Hérité de NumberFormat) |
| MaximumIntegerDigits |
Retourne le nombre maximal de chiffres autorisés dans la partie entière d’un nombre. -ou- Définit le nombre maximal de chiffres autorisés dans la partie entière d’un nombre. (Hérité de NumberFormat) |
| MinimumFractionDigits |
Retourne le nombre minimal de chiffres autorisés dans la partie fraction d’un nombre. -ou- Définit le nombre minimal de chiffres autorisés dans la partie fraction d’un nombre. (Hérité de NumberFormat) |
| MinimumIntegerDigits |
Retourne le nombre minimal de chiffres autorisés dans la partie entière d’un nombre. -ou- Définit le nombre minimal de chiffres autorisé dans la partie entière d’un nombre. (Hérité de NumberFormat) |
| ParseIntegerOnly |
Retourne true si ce format analyse les nombres sous forme d’entiers uniquement. -ou- Définit si les nombres doivent être analysés en tant qu’entiers uniquement. (Hérité de NumberFormat) |
| PeerReference |
Obtient la référence d’objet JNI pour cet homologue Java. (Hérité de Object) |
| RoundingMode |
Obtient l’élément |
| ThresholdClass |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
| ThresholdType |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
Méthodes
| Nom | Description |
|---|---|
| ApplyPattern(String) |
Définit le modèle. |
| Clone() |
Crée et retourne une copie de cet objet. (Hérité de _Format) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
A |
| Dispose() |
Libère les ressources détenues par cet homologue Java. (Hérité de Object) |
| Dispose(Boolean) |
Libère les ressources détenues par cet homologue Java. (Hérité de Object) |
| DisposeUnlessReferenced() |
A |
| Equals(Object) |
A |
| Equals(Object) |
Indique si un autre objet est « égal à » celui-ci. (Hérité de Object) |
| Format(Double, StringBuffer, FieldPosition) |
Retourne le modèle avec un double mis en forme. |
| Format(Double) |
Spécialisation du format. (Hérité de NumberFormat) |
| Format(Int64, StringBuffer, FieldPosition) |
Spécialisation du format. |
| Format(Int64) |
Spécialisation du format. (Hérité de NumberFormat) |
| Format(Object, StringBuffer, FieldPosition) |
Met en forme un nombre et ajoute le texte résultant à la mémoire tampon de chaîne donnée. (Hérité de NumberFormat) |
| Format(Object) |
Met en forme un objet pour produire une chaîne. (Hérité de _Format) |
| FormatToCharacterIterator(Object) |
Met en forme un objet produisant un |
| GetFormats() |
Retourne les chaînes associées aux plages de ce |
| GetHashCode() |
Retourne une valeur de code de hachage pour l’objet. (Hérité de Object) |
| GetLimits() |
Retourne les limites de ce |
| JavaFinalize() |
Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet. (Hérité de Object) |
| NextDouble(Double, Boolean) |
Recherche le moins double supérieur |
| NextDouble(Double) |
Recherche le moins double supérieur à |
| Notify() |
Réveille un thread unique qui attend le moniteur de cet objet. (Hérité de Object) |
| NotifyAll() |
Réveille tous les threads qui attendent le moniteur de cet objet. (Hérité de Object) |
| Parse(String, ParsePosition) |
Analyse un nombre à partir du texte d’entrée. |
| Parse(String) |
Analyse le texte à partir du début de la chaîne donnée pour produire un nombre. (Hérité de NumberFormat) |
| ParseObject(String, ParsePosition) |
Analyse le texte d’une chaîne pour produire un |
| ParseObject(String) |
Analyse le texte à partir du début de la chaîne donnée pour produire un objet. (Hérité de _Format) |
| PreviousDouble(Double) |
Trouve le plus grand double inférieur à |
| SetChoices(Double[], String[]) |
Définissez les choix à utiliser dans la mise en forme. |
| SetHandle(IntPtr, JniHandleOwnership) |
Définit la propriété Handle. (Hérité de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
A |
| ToArray<T>() |
Crée un tableau managé à partir de ce wrapper de tableau Java. (Hérité de Object) |
| ToPattern() |
Obtient le modèle. |
| ToString() |
Retourne une représentation sous forme de chaîne de l’objet. (Hérité de Object) |
| UnregisterFromRuntime() |
Annule l’inscription de cet homologue Java à partir du runtime d’interopérabilité. (Hérité de Object) |
| Wait() |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<> (Hérité de Object) |
| Wait(Int64, Int32) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
| Wait(Int64) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| IJavaPeerable.Disposed() |
A |
| IJavaPeerable.Finalized() |
A |
| IJavaPeerable.JniObjectReferenceControlBlock |
A |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
A |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
A |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
A |
| IJavaPeerable.UnregisterFromRuntime() |
A |
Méthodes d’extension
| Nom | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtient le nom JNI du type de l’instance |
| JavaAs<TResult>(IJavaPeerable) |
Essayez de forcer |
| JavaCast<TResult>(IJavaObject) |
Effectue une conversion de type vérifiée par le runtime Android. |
| JavaCast<TResult>(IJavaObject) |
A |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Essayez de forcer |