StrictMath 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í.
La clase StrictMath contiene métodos para realizar operaciones numéricas básicas, como las funciones exponenciales elementales, logaritmo, raíz cuadrada y trigonométrica.
[Android.Runtime.Register("java/lang/StrictMath", DoNotGenerateAcw=true)]
public sealed class StrictMath : Java.Lang.Object
[<Android.Runtime.Register("java/lang/StrictMath", DoNotGenerateAcw=true)>]
type StrictMath = class
inherit Object
- Herencia
- Atributos
Comentarios
La clase StrictMath contiene métodos para realizar operaciones numéricas básicas, como las funciones exponenciales elementales, logaritmo, raíz cuadrada y trigonométrica.
Para ayudar a garantizar la portabilidad de Java programas, las definiciones de algunas de las funciones numéricas de este paquete requieren que produzcan los mismos resultados que determinados algoritmos publicados. Estos algoritmos están disponibles en la biblioteca netlib de red conocida como el paquete "Biblioteca matemática distribuible libremente", fdlibmhttps://www.netlib.org/fdlibm/. Estos algoritmos, que se escriben en el lenguaje de programación C, se entiende que se transliteran en Java y se ejecuten con todas las operaciones de punto flotante e entero siguiendo las reglas de Java aritmética. Las transformaciones siguientes se usan en la transliteración:
<Ul><li>Extracción y configuración de las mitades altas y bajas de una C de 64 bits double se expresa mediante métodos de plataforma Java que realizan conversiones bit a bit Double#doubleToRawLongBits(double) de {@code double a long} y Double#longBitsToDouble(long) {@code long a double}.
<los>valores sin firmar int de C se asignan a los valores con signo int en Java con actualizaciones de las operaciones para replicar la semántica sin firmar donde los resultados de la misma operación textual diferirían. Por ejemplo, >> los cambios en los valores de C sin signo se reemplazan por >>> turnos en valores de Java firmados. Las comparaciones de tamaño de los valores de C sin signo (<, <=, >, >=) se reemplazan por llamadas semánticamente equivalentes a Integer#compareUnsigned(int, int) compareUnsigned.
</ul>
La biblioteca matemática Java se define con respecto a la fdlibm versión 5.3. Donde fdlibm proporciona más de una definición para una función (como acos), use la versión "IEEE 754 core function" (que reside en un archivo cuyo nombre comienza por la letra e). Los métodos que requieren fdlibm semántica son sin, cos, tanasinacosatanexploglog10cbrtatan2powsinhcoshtanhhypoty . expm1log1p
La plataforma usa la aritmética de enteros de dos signos con tipos primitivos int y long. El desarrollador debe elegir el tipo primitivo para asegurarse de que las operaciones aritméticas produzcan resultados correctos de forma coherente, lo que, en algunos casos, significa que las operaciones no desbordarán el intervalo de valores del cálculo. El procedimiento recomendado es elegir el tipo primitivo y el algoritmo para evitar desbordamiento. En los casos en los que el tamaño es int o long y los errores de desbordamiento deben detectarse, los métodos cuyos nombres terminan con Exact inician una ArithmeticException excepción cuando se desbordan los resultados.
<h2>Ieee754RecommendedOps>IEEE 754 Recommended Operations</h2>
La java.lang.Math Math clase describe cómo la calidad compartida de los criterios de implementación para los métodos y Math seleccionados StrictMath se relaciona con las operaciones recomendadas de IEEE 754.
Agregado en la versión 1.3.
Java documentación para java.lang.StrictMath.
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.
Campos
| Nombre | Description |
|---|---|
| E |
Valor |
| Pi |
Valor |
| Tau |
Valor |
Propiedades
| Nombre | Description |
|---|---|
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| 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 |
La clase |
| JniPeerMembers |
Obtiene los metadatos de JNI usados para invocar miembros de este Java del mismo nivel. |
| PeerReference |
Obtiene la referencia de objeto JNI para este Java del mismo nivel. (Heredado de Object) |
| ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. (Heredado de Object) |
| ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. (Heredado de Object) |
Métodos
| Nombre | Description |
|---|---|
| Abs(Double) |
Devuelve el valor absoluto de un |
| Abs(Int32) |
Devuelve el valor absoluto de un |
| Abs(Int64) |
Devuelve el valor absoluto de un |
| Abs(Single) |
Devuelve el valor absoluto de un |
| AbsExact(Int32) |
Devuelve el valor absoluto matemático de un |
| AbsExact(Int64) |
Devuelve el valor absoluto matemático de un |
| Acos(Double) |
Devuelve el coseno de arco de un valor; el ángulo devuelto está en el intervalo 0. |
| AddExact(Int32, Int32) |
Devuelve la suma de sus argumentos, iniciando una excepción si el resultado desborda un |
| AddExact(Int64, Int64) |
Devuelve la suma de sus argumentos, iniciando una excepción si el resultado desborda un |
| Asin(Double) |
Devuelve el seno de arco de un valor; el ángulo devuelto está en el rango &menos; pi/2 a pi/2. |
| Atan(Double) |
Devuelve la tangente de arco de un valor; el ángulo devuelto está en el rango &menos; pi/2 a pi/2. |
| Atan2(Double, Double) |
Devuelve el ángulo theta de la conversión de coordenadas rectangulares ( |
| Cbrt(Double) |
Devuelve la raíz del cubo de un |
| Ceil(Double) |
Devuelve el valor más pequeño (más cercano al infinito negativo) |
| CeilDiv(Int32, Int32) |
Devuelve el valor más pequeño (más cercano al infinito negativo) |
| CeilDiv(Int64, Int32) |
Devuelve el valor más pequeño (más cercano al infinito negativo) |
| CeilDiv(Int64, Int64) |
Devuelve el valor más pequeño (más cercano al infinito negativo) |
| CeilDivExact(Int32, Int32) |
Devuelve el valor más pequeño (más cercano al infinito negativo) |
| CeilDivExact(Int64, Int64) |
Devuelve el valor más pequeño (más cercano al infinito negativo) |
| CeilMod(Int32, Int32) |
Devuelve el módulo de techo de los |
| CeilMod(Int64, Int32) |
Devuelve el módulo de techo de los |
| CeilMod(Int64, Int64) |
Devuelve el módulo de techo de los |
| Clamp(Double, Double, Double) |
Fija el valor que se ajustará entre min y max. |
| Clamp(Int64, Int32, Int32) |
Fija el valor que se ajustará entre min y max. |
| Clamp(Int64, Int64, Int64) |
Fija el valor que se ajustará entre min y max. |
| Clamp(Single, Single, Single) |
Fija el valor que se ajustará entre min y max. |
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
La clase |
| CopySign(Double, Double) |
Devuelve el primer argumento de punto flotante con el signo del segundo argumento de punto flotante. |
| CopySign(Single, Single) |
Devuelve el primer argumento de punto flotante con el signo del segundo argumento de punto flotante. |
| Cos(Double) |
Devuelve el coseno trigonométrico de un ángulo. |
| Cosh(Double) |
Devuelve el coseno hiperbólico de un |
| DecrementExact(Int32) |
Devuelve el argumento decrementado por uno, iniciando una excepción si el resultado desborda un |
| DecrementExact(Int64) |
Devuelve el argumento decrementado por uno, iniciando una excepción si el resultado desborda un |
| 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() |
La clase |
| DivideExact(Int32, Int32) |
Devuelve el cociente de los argumentos, iniciando una excepción si el resultado desborda un |
| DivideExact(Int64, Int64) |
Devuelve el cociente de los argumentos, iniciando una excepción si el resultado desborda un |
| Equals(Object) |
La clase |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| Exp(Double) |
Devuelve el número e de Euler elevado a la potencia de un |
| Expm1(Double) |
Devuelve e<sup>x</sup> &menos;1. |
| Floor(Double) |
Devuelve el valor más grande (más cercano al infinito positivo) |
| FloorDiv(Int32, Int32) |
Devuelve el valor más grande (más cercano al infinito positivo) |
| FloorDiv(Int64, Int32) |
Devuelve el valor más grande (más cercano al infinito positivo) |
| FloorDiv(Int64, Int64) |
Devuelve el valor más grande (más cercano al infinito positivo) |
| FloorDivExact(Int32, Int32) |
Devuelve el valor más grande (más cercano al infinito positivo) |
| FloorDivExact(Int64, Int64) |
Devuelve el valor más grande (más cercano al infinito positivo) |
| FloorMod(Int32, Int32) |
Devuelve el módulo de suelo de los |
| FloorMod(Int64, Int32) |
Devuelve el módulo de suelo de los |
| FloorMod(Int64, Int64) |
Devuelve el módulo de suelo de los |
| Fma(Double, Double, Double) |
Devuelve la suma multiplicada fusionada de los tres argumentos; es decir, devuelve el producto exacto de los dos primeros argumentos sumados con el tercer argumento y, a continuación, redondeado una vez a la más cercana |
| Fma(Single, Single, Single) |
Devuelve la suma multiplicada fusionada de los tres argumentos; es decir, devuelve el producto exacto de los dos primeros argumentos sumados con el tercer argumento y, a continuación, redondeado una vez a la más cercana |
| GetExponent(Double) |
Devuelve el exponente no sesgado usado en la representación de . |
| GetExponent(Single) |
Devuelve el exponente no sesgado usado en la representación de . |
| GetHashCode() |
Devuelve un valor de código hash para el objeto . (Heredado de Object) |
| Hypot(Double, Double) |
Devuelve sqrt(x<sup>2</sup> +y<sup>2</sup>) sin desbordamiento intermedio o subflujo. |
| IEEEremainder(Double, Double) |
Calcula la operación de resto en dos argumentos según lo indicado por el estándar IEEE 754. |
| IncrementExact(Int32) |
Devuelve el argumento incrementado en uno, iniciando una excepción si el resultado desborda un |
| IncrementExact(Int64) |
Devuelve el argumento incrementado por uno, iniciando una excepción si el resultado desborda un |
| JavaFinalize() |
Obsoletos.
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) |
| Log(Double) |
Devuelve el logaritmo natural (base e) de un |
| Log10(Double) |
Devuelve el logaritmo base 10 de un |
| Log1p(Double) |
Devuelve el logaritmo natural de la suma del argumento y 1. |
| Max(Double, Double) |
Devuelve el mayor de dos |
| Max(Int32, Int32) |
Devuelve el mayor de dos |
| Max(Int64, Int64) |
Devuelve el mayor de dos |
| Max(Single, Single) |
Devuelve el mayor de dos |
| Min(Double, Double) |
Devuelve el menor de dos |
| Min(Int32, Int32) |
Devuelve el menor de dos |
| Min(Int64, Int64) |
Devuelve el menor de dos |
| Min(Single, Single) |
Devuelve el menor de dos |
| MultiplyExact(Int32, Int32) |
Devuelve el producto de los argumentos, iniciando una excepción si el resultado desborda un |
| MultiplyExact(Int64, Int32) |
Devuelve el producto de los argumentos, iniciando una excepción si el resultado desborda un |
| MultiplyExact(Int64, Int64) |
Devuelve el producto de los argumentos, iniciando una excepción si el resultado desborda un |
| MultiplyFull(Int32, Int32) |
Devuelve el producto matemático exacto de los argumentos. |
| MultiplyHigh(Int64, Int64) |
Devuelve como el |
| NegateExact(Int32) |
Devuelve la negación del argumento, iniciando una excepción si el resultado desborda un |
| NegateExact(Int64) |
Devuelve la negación del argumento , iniciando una excepción si el resultado desborda un |
| NextAfter(Double, Double) |
Devuelve el número de punto flotante adyacente al primer argumento en la dirección del segundo argumento. |
| NextAfter(Single, Double) |
Devuelve el número de punto flotante adyacente al primer argumento en la dirección del segundo argumento. |
| NextDown(Double) |
Devuelve el valor de punto flotante adyacente a |
| NextDown(Single) |
Devuelve el valor de punto flotante adyacente a |
| NextUp(Double) |
Devuelve el valor de punto flotante adyacente a |
| NextUp(Single) |
Devuelve el valor de punto flotante adyacente a |
| 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) |
| Pow(Double, Double) |
Devuelve el valor del primer argumento elevado a la potencia del segundo argumento. |
| PowExact(Int32, Int32) |
Devuelve |
| PowExact(Int64, Int32) |
Devuelve |
| Random() |
Devuelve un valor con un |
| Rint(Double) |
Devuelve el |
| Round(Double) |
Devuelve el más |
| Round(Single) |
Devuelve el más |
| Scalb(Double, Int32) |
Devuelve |
| Scalb(Single, Int32) |
Devuelve |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
La clase |
| Signum(Double) |
Devuelve la función signum del argumento; cero si el argumento es cero, 1. |
| Signum(Single) |
Devuelve la función signum del argumento; cero si el argumento es cero, 1. |
| Sin(Double) |
Devuelve el seno trigonométrico de un ángulo. |
| Sinh(Double) |
Devuelve el seno hiperbólico de un |
| Sqrt(Double) |
Devuelve la raíz cuadrada positiva redondeada correctamente de un |
| SubtractExact(Int32, Int32) |
Devuelve la diferencia de los argumentos, iniciando una excepción si el resultado desborda un |
| SubtractExact(Int64, Int64) |
Devuelve la diferencia de los argumentos, iniciando una excepción si el resultado desborda un |
| Tan(Double) |
Devuelve la tangente trigonométrica de un ángulo. |
| Tanh(Double) |
Devuelve la tangente hiperbólica de un |
| ToArray<T>() |
Crea una matriz administrada a partir de este contenedor de matriz Java. (Heredado de Object) |
| ToDegrees(Double) |
Convierte un ángulo medido en radianes a un ángulo aproximadamente equivalente medido en grados. |
| ToIntExact(Int64) |
Devuelve el valor del |
| ToRadians(Double) |
Convierte un ángulo medido en grados a un ángulo aproximadamente equivalente medido en radianes. |
| ToString() |
Devuelve una representación de cadena del objeto . (Heredado de Object) |
| Ulp(Double) |
Devuelve el tamaño de un ulp del argumento . |
| Ulp(Single) |
Devuelve el tamaño de un ulp del argumento . |
| UnregisterFromRuntime() |
Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| UnsignedMultiplyExact(Int32, Int32) |
Devuelve el producto de los argumentos sin firmar, iniciando una excepción si el resultado desborda un signo sin |
| UnsignedMultiplyExact(Int64, Int32) |
Devuelve el producto de los argumentos sin firmar, iniciando una excepción si el resultado desborda un signo sin |
| UnsignedMultiplyExact(Int64, Int64) |
Devuelve el producto de los argumentos sin firmar, iniciando una excepción si el resultado desborda un signo sin |
| UnsignedMultiplyHigh(Int64, Int64) |
Devuelve como los |
| UnsignedPowExact(Int32, Int32) |
Devuelve unsigned |
| UnsignedPowExact(Int64, Int32) |
Devuelve unsigned |
| 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() |
La clase |
| IJavaPeerable.Finalized() |
La clase |
| IJavaPeerable.JniObjectReferenceControlBlock |
La clase |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
La clase |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
La clase |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
La clase |
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) |
La clase |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |