Compartir a través de


NumberFormat Clase

Definición

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
NumberFormat
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 Objectobjeto .

(Heredado de Object)
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 java.util.Locale.Category#FORMAT FORMAT actual.

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 java.util.Locale.Category#FORMAT FORMAT actual.

IntegerInstance

Devuelve un formato de número entero para la configuración regional predeterminada java.util.Locale.Category#FORMAT FORMAT actual.

JniIdentityHashCode

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
JniPeerMembers

NumberFormat es la clase base abstracta para todos los formatos de número.

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 java.util.Locale.Category#FORMAT FORMAT actual.

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

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
PercentInstance

Devuelve un formato de porcentaje para la configuración regional predeterminada java.util.Locale.Category#FORMAT FORMAT actual.

RoundingMode

Obtiene el objeto java.math.RoundingMode utilizado en este numberFormat. -o bien- Establece el java.math.RoundingMode objeto usado en este numberFormat.

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

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
Dispose(Boolean)

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
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 AttributedCharacterIteratorobjeto .

(Heredado de _Format)
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 Number.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
ToArray<T>()

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
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()

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
IJavaPeerable.DisposeUnlessReferenced()

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
IJavaPeerable.Finalized()

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
IJavaPeerable.JniManagedPeerState

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

NumberFormat es la clase base abstracta para todos los formatos de número.

(Heredado de Object)

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)

NumberFormat es la clase base abstracta para todos los formatos de número.

GetJniTypeName(IJavaPeerable)

NumberFormat es la clase base abstracta para todos los formatos de número.

Se aplica a