NumberFormat Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
NumberFormat es la clase base abstracta para todos los formatos de número.
[Android.Runtime.Register("java/text/NumberFormat", DoNotGenerateAcw=true)]
public abstract class NumberFormat : Java.Text._Format
[<Android.Runtime.Register("java/text/NumberFormat", DoNotGenerateAcw=true)>]
type NumberFormat = class
inherit _Format
- Herencia
- Derivado
- Atributos
Comentarios
NumberFormat es la clase base abstracta para todos los formatos de número. Esta clase proporciona la interfaz para dar formato y analizar números.
NumberFormat también proporciona métodos para determinar qué configuraciones regionales tienen formatos numéricos y cuáles son sus nombres.
NumberFormat le ayuda a formatear y analizar números para cualquier configuración regional. El código puede ser completamente independiente de las convenciones de configuración regional para puntos decimales, separadores de miles o incluso los dígitos decimales concretos usados, o si el formato de número es incluso decimal.
Para dar formato a un número para la configuración regional actual, use uno de los métodos de clase factory: <blockquote>
{@code
myString = NumberFormat.getInstance().format(myNumber);
}
</blockquote> Si da formato a varios números, es más eficaz obtener el formato y usarlo varias veces para que el sistema no tenga que capturar la información sobre el idioma local y las convenciones de país varias veces. <blockquote>
{@code
NumberFormat nf = NumberFormat.getInstance();
for (int i = 0; i < myNumber.length; ++i) {
output.println(nf.format(myNumber[i]) + "; ");
}
}
</blockquote> Para dar formato a un número para una configuración regional diferente, especifíquelo en la llamada a getInstance.
<blockquote>
{@code
NumberFormat nf = NumberFormat.getInstance(Locale.FRENCH);
}
</blockquote>
Si la configuración regional contiene extensiones Unicode "nu" (números), se invalidan los dígitos decimales o el país usado para el formato.
También puede usar para NumberFormat analizar números: <blockquote>
{@code
myNumber = nf.parse(myString);
}
</blockquote> Use getInstance o getNumberInstance para obtener el formato de número normal. Use getIntegerInstance para obtener un formato de número entero. Use getCurrencyInstance para obtener el formato de número de moneda. Use getCompactNumberInstance para obtener el formato de número compacto para dar formato a un número en formato más corto. Por ejemplo, 2000 se puede dar formato a "2K" como en java.util.Locale#US US locale. Use getPercentInstance para obtener un formato para mostrar porcentajes. Con este formato, una fracción como 0,53 se muestra como 53%.
También puede controlar la presentación de números con métodos como setMinimumFractionDigits. Si quieres tener aún más control sobre el formato o el análisis, o quieres dar a los usuarios más control, puedes intentar convertir los NumberFormat métodos de fábrica a o DecimalFormatCompactNumberFormat dependiendo del método de fábrica usado. Esto funcionará para la gran mayoría de configuraciones regionales; recuerde colocarlo en un try bloque en caso de que encuentre uno inusual.
NumberFormat y DecimalFormat están diseñados para que algunos controles funcionen para el formato y otros funcionan para el análisis. A continuación se muestra la descripción detallada de cada uno de estos métodos de control,
setParseIntegerOnly : solo afecta al análisis, por ejemplo, si es true, "3456.78" → 3456 (y deja la posición de análisis justo después del índice 6) si es false, "3456.78" → 3456.78 (y deja la posición de análisis justo después del índice 8) Esto es independiente del formato. Si no desea mostrar un separador decimal donde puede que no haya dígitos después del separador decimal, use setDecimalSeparatorAlwaysShown.
setDecimalSeparatorAlwaysShown : solo afecta al formato y solo donde puede que no haya dígitos después del separador decimal, como con un patrón como "#,##0.##", por ejemplo, si es true, 3456.00 → "3,456." si es false, 3456.00 → "3456" Esto es independiente del análisis. Si desea que el análisis se detenga en el separador decimal, use setParseIntegerOnly.
También puede usar formas de los parse métodos y con format y ParsePositionFieldPosition para permitirle: <ul><li> analizar progresivamente a través de partes de una cadena <li> alinean el separador decimal y otras áreas </ul> Por ejemplo, puede alinear números de dos maneras: <ol><li> Si usa una fuente monoespacial con espaciado para la alineación, puede pasar la FieldPosition llamada de formato, con field = INTEGER_FIELD. En la salida, getEndIndex se establecerá en el desplazamiento entre el último carácter del entero y el decimal. Agregue espacios (desiredSpaceCount - getEndIndex) en la parte frontal de la cadena.
<li> Si usa fuentes proporcionales, en lugar de rellenar con espacios, mida el ancho de la cadena en píxeles desde el principio a getEndIndex. A continuación, mueva el lápiz por (desiredPixelWidth - widthToAlignmentPoint) antes de dibujar el texto. También funciona donde no hay caracteres decimales, pero posiblemente caracteres adicionales al final, por ejemplo, con paréntesis en números negativos: "(12)" para -12.
</ol>
<h2>"synchronization">Synchronization</h2>
Por lo general, los formatos de número no se sincronizan. Se recomienda crear instancias de formato independientes para cada subproceso. Si varios subprocesos acceden a un formato simultáneamente, debe sincronizarse externamente.
Agregado en la versión 1.1.
Java documentación para java.text.NumberFormat.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.
Constructores
| Nombre | Description |
|---|---|
| NumberFormat() |
Constructor único. |
| NumberFormat(IntPtr, JniHandleOwnership) |
Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución. |
Campos
| Nombre | Description |
|---|---|
| FractionField |
Constante de campo utilizada para construir un objeto FieldPosition. |
| IntegerField |
Constante de campo utilizada para construir un objeto FieldPosition. |
Propiedades
| Nombre | Description |
|---|---|
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Currency |
Obtiene la moneda usada por este formato de número al dar formato a los valores de moneda. -o bien- Establece la moneda utilizada por este formato numérico al dar formato a los valores de moneda. |
| CurrencyInstance |
Devuelve un formato de moneda para la configuración regional predeterminada |
| GroupingUsed |
Devuelve true si la agrupación se usa en este formato. -o bien- Establecer si se usará o no la agrupación en este formato. |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| Instance |
Devuelve un formato de número de uso general para la configuración regional predeterminada |
| IntegerInstance |
Devuelve un formato de número entero para la configuración regional predeterminada |
| JniIdentityHashCode |
Obtiene el código hash de identidad asignado a este Java del mismo nivel por el tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| JniManagedPeerState |
|
| JniPeerMembers |
|
| MaximumFractionDigits |
Devuelve el número máximo de dígitos permitidos en la parte de fracción de un número. -o bien- Establece el número máximo de dígitos permitidos en la parte de fracción de un número. |
| MaximumIntegerDigits |
Devuelve el número máximo de dígitos permitidos en la parte entera de un número. -o bien- Establece el número máximo de dígitos permitidos en la parte entera de un número. |
| MinimumFractionDigits |
Devuelve el número mínimo de dígitos permitidos en la parte de fracción de un número. -o bien- Establece el número mínimo de dígitos permitidos en la parte de fracción de un número. |
| MinimumIntegerDigits |
Devuelve el número mínimo de dígitos permitidos en la parte entera de un número. -o bien- Establece el número mínimo de dígitos permitidos en la parte entera de un número. |
| NumberInstance |
Devuelve un formato de número de uso general para la configuración regional predeterminada |
| ParseIntegerOnly |
Devuelve true si este formato analizará los números solo como enteros. -o bien- Establece si los números deben analizarse como enteros únicamente. |
| PeerReference |
Obtiene la referencia de objeto JNI para este Java del mismo nivel. (Heredado de Object) |
| PercentInstance |
Devuelve un formato de porcentaje para la configuración regional predeterminada |
| RoundingMode |
Obtiene el objeto |
| ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
| ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
Métodos
| Nombre | Description |
|---|---|
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de _Format) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
|
| Dispose() |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| Dispose(Boolean) |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| DisposeUnlessReferenced() |
|
| Equals(Object) |
|
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| Format(Double, StringBuffer, FieldPosition) |
Especialización del formato. |
| Format(Double) |
Especialización del formato. |
| Format(Int64, StringBuffer, FieldPosition) |
Especialización del formato. |
| Format(Int64) |
Especialización del formato. |
| Format(Object, StringBuffer, FieldPosition) |
Da formato a un número y anexa el texto resultante al búfer de cadena especificado. |
| Format(Object) |
Da formato a un objeto para generar una cadena. (Heredado de _Format) |
| FormatToCharacterIterator(Object) |
Da formato a un objeto que genera un |
| GetAvailableLocales() |
Devuelve un formato científico para la configuración regional predeterminada actual. |
| GetCurrencyInstance(Locale) |
Devuelve un formato de moneda para la configuración regional especificada. |
| GetHashCode() |
Devuelve un valor de código hash para el objeto . (Heredado de Object) |
| GetInstance(Locale) |
Devuelve un formato de número de uso general para la configuración regional especificada. |
| GetIntegerInstance(Locale) |
Devuelve un formato de número entero para la configuración regional especificada. |
| GetNumberInstance(Locale) |
Devuelve un formato de número de uso general para la configuración regional especificada. |
| GetPercentInstance(Locale) |
Devuelve un formato de porcentaje para la configuración regional especificada. |
| JavaFinalize() |
Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto . (Heredado de Object) |
| Notify() |
Activa un único subproceso que está esperando en el monitor de este objeto. (Heredado de Object) |
| NotifyAll() |
Activa todos los subprocesos que están esperando en el monitor de este objeto. (Heredado de Object) |
| Parse(String, ParsePosition) |
Devuelve un long si es posible (e. |
| Parse(String) |
Analiza el texto desde el principio de la cadena especificada para generar un número. |
| ParseObject(String, ParsePosition) |
Analiza el texto de una cadena para generar un |
| ParseObject(String) |
Analiza el texto desde el principio de la cadena especificada para generar un objeto . (Heredado de _Format) |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
|
| ToArray<T>() |
Crea una matriz administrada a partir de este contenedor de matriz Java. (Heredado de Object) |
| ToString() |
Devuelve una representación de cadena del objeto . (Heredado de Object) |
| UnregisterFromRuntime() |
Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| Wait() |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em< o >em<interrumpido>/em<.><> (Heredado de Object) |
| Wait(Int64, Int32) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
| Wait(Int64) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IJavaPeerable.Disposed() |
|
| IJavaPeerable.Finalized() |
|
| IJavaPeerable.JniObjectReferenceControlBlock |
|
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
|
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
|
| IJavaPeerable.SetPeerReference(JniObjectReference) |
|
| IJavaPeerable.UnregisterFromRuntime() |
|
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
|
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |