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 que obtienes de los métodos de fábrica a o DecimalFormat CompactNumberFormat 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 ParsePosition y FieldPosition format 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.
Documentación de Java para java.text.NumberFormat.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.
Constructores
| NumberFormat() |
Constructor único. |
| NumberFormat(IntPtr, JniHandleOwnership) |
Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución. |
Campos
| FractionField |
Constante de campo utilizada para construir un objeto FieldPosition. |
| IntegerField |
Constante de campo utilizada para construir un objeto FieldPosition. |
Propiedades
| 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 |
|
| 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 |
|
| 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
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de _Format) |
| Dispose() |
|
| Dispose(Boolean) |
|
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| Format(Double) |
Especialización del formato. |
| Format(Double, StringBuffer, FieldPosition) |
Especialización del formato. |
| Format(Int64) |
Especialización del formato. |
| Format(Int64, StringBuffer, FieldPosition) |
Especialización del formato. |
| Format(Object) |
Da formato a un objeto para generar una cadena. (Heredado de _Format) |
| Format(Object, StringBuffer, FieldPosition) |
Da formato a un número y anexa el texto resultante al búfer de cadena especificado. |
| 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 del 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) |
Analiza el texto desde el principio de la cadena especificada para generar un número. |
| Parse(String, ParsePosition) |
Devuelve un long si es posible (e. |
| ParseObject(String) |
Analiza el texto desde el principio de la cadena especificada para generar un objeto . (Heredado de _Format) |
| ParseObject(String, ParsePosition) |
Analiza el texto de una cadena para generar un |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| ToArray<T>() |
|
| ToString() |
Devuelve una representación de cadena del objeto. (Heredado de Object) |
| UnregisterFromRuntime() |
|
| Wait() |
Hace que el subproceso actual espere hasta que se despierta, normalmente por ser em notificado/em> o <em>interrumpido</em>.<>< (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) |
| 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) |
Implementaciones de interfaz explícitas
| IJavaPeerable.Disposed() |
|
| IJavaPeerable.DisposeUnlessReferenced() |
|
| IJavaPeerable.Finalized() |
|
| IJavaPeerable.JniManagedPeerState |
|
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
|
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
|
| IJavaPeerable.SetPeerReference(JniObjectReference) |
|
Métodos de extensión
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
|
| GetJniTypeName(IJavaPeerable) |
|