Lenguaje

StrictMath Clase

Definición

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
StrictMath
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 double más cercano que cualquier otro a e, la base de los logaritmos naturales.

Pi

Valor double más cercano que cualquier otro a pi (π), la relación de la circunferencia de un círculo a su diámetro.

Tau

Valor double más cercano que cualquier otro a tau (τ), la relación de la circunferencia de un círculo a su radio.

Propiedades

Nombre Description
Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
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 StrictMath contiene métodos para realizar operaciones numéricas básicas, como las funciones exponenciales elementales, logaritmo, raíz cuadrada y trigonométrica.

(Heredado de JavaObject)
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 double valor.

Abs(Int32)

Devuelve el valor absoluto de un int valor.

Abs(Int64)

Devuelve el valor absoluto de un long valor.

Abs(Single)

Devuelve el valor absoluto de un float valor.

AbsExact(Int32)

Devuelve el valor absoluto matemático de un int valor si se puede representar exactamente como , intiniciando ArithmeticException si el resultado desborda el intervalo positivo int .

AbsExact(Int64)

Devuelve el valor absoluto matemático de un long valor si se puede representar exactamente como , longiniciando ArithmeticException si el resultado desborda el intervalo positivo long .

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 int.

AddExact(Int64, Int64)

Devuelve la suma de sus argumentos, iniciando una excepción si el resultado desborda un long.

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 (x, y) a coordenadas polares (r, theta).

Cbrt(Double)

Devuelve la raíz del cubo de un double valor.

Ceil(Double)

Devuelve el valor más pequeño (más cercano al infinito negativo) double que es mayor o igual que el argumento y es igual a un entero matemático.

CeilDiv(Int32, Int32)

Devuelve el valor más pequeño (más cercano al infinito negativo) int que es mayor o igual que el cociente algebraico.

CeilDiv(Int64, Int32)

Devuelve el valor más pequeño (más cercano al infinito negativo) long que es mayor o igual que el cociente algebraico.

CeilDiv(Int64, Int64)

Devuelve el valor más pequeño (más cercano al infinito negativo) long que es mayor o igual que el cociente algebraico.

CeilDivExact(Int32, Int32)

Devuelve el valor más pequeño (más cercano al infinito negativo) int que es mayor o igual que el cociente algebraico.

CeilDivExact(Int64, Int64)

Devuelve el valor más pequeño (más cercano al infinito negativo) long que es mayor o igual que el cociente algebraico.

CeilMod(Int32, Int32)

Devuelve el módulo de techo de los int argumentos.

CeilMod(Int64, Int32)

Devuelve el módulo de techo de los long argumentos y int .

CeilMod(Int64, Int64)

Devuelve el módulo de techo de los long argumentos.

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 StrictMath contiene métodos para realizar operaciones numéricas básicas, como las funciones exponenciales elementales, logaritmo, raíz cuadrada y trigonométrica.

(Heredado de JavaObject)
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 double valor.

DecrementExact(Int32)

Devuelve el argumento decrementado por uno, iniciando una excepción si el resultado desborda un int.

DecrementExact(Int64)

Devuelve el argumento decrementado por uno, iniciando una excepción si el resultado desborda un long.

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 StrictMath contiene métodos para realizar operaciones numéricas básicas, como las funciones exponenciales elementales, logaritmo, raíz cuadrada y trigonométrica.

(Heredado de JavaObject)
DivideExact(Int32, Int32)

Devuelve el cociente de los argumentos, iniciando una excepción si el resultado desborda un int.

DivideExact(Int64, Int64)

Devuelve el cociente de los argumentos, iniciando una excepción si el resultado desborda un long.

Equals(Object)

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.

(Heredado de JavaObject)
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 double valor.

Expm1(Double)

Devuelve e<sup>x</sup>  &menos;1.

Floor(Double)

Devuelve el valor más grande (más cercano al infinito positivo) double que es menor o igual que el argumento y es igual a un entero matemático.

FloorDiv(Int32, Int32)

Devuelve el valor más grande (más cercano al infinito positivo) int que es menor o igual que el cociente algebraico.

FloorDiv(Int64, Int32)

Devuelve el valor más grande (más cercano al infinito positivo) long que es menor o igual que el cociente algebraico.

FloorDiv(Int64, Int64)

Devuelve el valor más grande (más cercano al infinito positivo) long que es menor o igual que el cociente algebraico.

FloorDivExact(Int32, Int32)

Devuelve el valor más grande (más cercano al infinito positivo) int que es menor o igual que el cociente algebraico.

FloorDivExact(Int64, Int64)

Devuelve el valor más grande (más cercano al infinito positivo) long que es menor o igual que el cociente algebraico.

FloorMod(Int32, Int32)

Devuelve el módulo de suelo de los int argumentos.

FloorMod(Int64, Int32)

Devuelve el módulo de suelo de los long argumentos y int .

FloorMod(Int64, Int64)

Devuelve el módulo de suelo de los long argumentos.

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 double.

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 float.

GetExponent(Double)

Devuelve el exponente no sesgado usado en la representación de .double

GetExponent(Single)

Devuelve el exponente no sesgado usado en la representación de .float

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 int.

IncrementExact(Int64)

Devuelve el argumento incrementado por uno, iniciando una excepción si el resultado desborda un long.

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 double valor.

Log10(Double)

Devuelve el logaritmo base 10 de un double valor.

Log1p(Double)

Devuelve el logaritmo natural de la suma del argumento y 1.

Max(Double, Double)

Devuelve el mayor de dos double valores.

Max(Int32, Int32)

Devuelve el mayor de dos int valores.

Max(Int64, Int64)

Devuelve el mayor de dos long valores.

Max(Single, Single)

Devuelve el mayor de dos float valores.

Min(Double, Double)

Devuelve el menor de dos double valores.

Min(Int32, Int32)

Devuelve el menor de dos int valores.

Min(Int64, Int64)

Devuelve el menor de dos long valores.

Min(Single, Single)

Devuelve el menor de dos float valores.

MultiplyExact(Int32, Int32)

Devuelve el producto de los argumentos, iniciando una excepción si el resultado desborda un int.

MultiplyExact(Int64, Int32)

Devuelve el producto de los argumentos, iniciando una excepción si el resultado desborda un long.

MultiplyExact(Int64, Int64)

Devuelve el producto de los argumentos, iniciando una excepción si el resultado desborda un long.

MultiplyFull(Int32, Int32)

Devuelve el producto matemático exacto de los argumentos.

MultiplyHigh(Int64, Int64)

Devuelve como el long producto de 128 bits más significativo de 64 bits de dos factores de 64 bits.

NegateExact(Int32)

Devuelve la negación del argumento, iniciando una excepción si el resultado desborda un int.

NegateExact(Int64)

Devuelve la negación del argumento , iniciando una excepción si el resultado desborda un long.

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 d en la dirección del infinito negativo.

NextDown(Single)

Devuelve el valor de punto flotante adyacente a f en la dirección del infinito negativo.

NextUp(Double)

Devuelve el valor de punto flotante adyacente a d en la dirección del infinito positivo.

NextUp(Single)

Devuelve el valor de punto flotante adyacente a f en la dirección del infinito positivo.

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 x generado a la potencia de n, iniciando una excepción si el resultado desborda un int.

PowExact(Int64, Int32)

Devuelve x generado a la potencia de n, iniciando una excepción si el resultado desborda un long.

Random()

Devuelve un valor con un double signo positivo, mayor o igual que 0.0 y menor que 1.0.

Rint(Double)

Devuelve el double valor más cercano en el valor al argumento y es igual a un entero matemático.

Round(Double)

Devuelve el más long cercano al argumento, con la redondeo de la redondeo al infinito positivo.

Round(Single)

Devuelve el más int cercano al argumento, con la redondeo de la redondeo al infinito positivo.

Scalb(Double, Int32)

Devuelve d × 2<sup>scaleFactor</sup> redondeados como si lo realizara un único multiplicador de punto flotante redondeado correctamente.

Scalb(Single, Int32)

Devuelve f × 2<sup>scaleFactor</sup> redondeados como si lo realizara un único multiplicador de punto flotante redondeado correctamente.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

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.

(Heredado de JavaObject)
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 double valor.

Sqrt(Double)

Devuelve la raíz cuadrada positiva redondeada correctamente de un double valor.

SubtractExact(Int32, Int32)

Devuelve la diferencia de los argumentos, iniciando una excepción si el resultado desborda un int.

SubtractExact(Int64, Int64)

Devuelve la diferencia de los argumentos, iniciando una excepción si el resultado desborda un long.

Tan(Double)

Devuelve la tangente trigonométrica de un ángulo.

Tanh(Double)

Devuelve la tangente hiperbólica de un double valor.

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 long argumento , iniciando una excepción si el valor desborda un int.

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 intfirmar.

UnsignedMultiplyExact(Int64, Int32)

Devuelve el producto de los argumentos sin firmar, iniciando una excepción si el resultado desborda un signo sin longfirmar.

UnsignedMultiplyExact(Int64, Int64)

Devuelve el producto de los argumentos sin firmar, iniciando una excepción si el resultado desborda un signo sin longfirmar.

UnsignedMultiplyHigh(Int64, Int64)

Devuelve como los long 64 bits más significativos del producto de 128 bits sin signo de dos factores de 64 bits sin signo.

UnsignedPowExact(Int32, Int32)

Devuelve unsigned x elevado a la potencia de n, iniciando una excepción si el resultado desborda un signo sin intfirmar .

UnsignedPowExact(Int64, Int32)

Devuelve unsigned x elevado a la potencia de n, iniciando una excepción si el resultado desborda un signo sin longfirmar .

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 StrictMath contiene métodos para realizar operaciones numéricas básicas, como las funciones exponenciales elementales, logaritmo, raíz cuadrada y trigonométrica.

(Heredado de JavaObject)
IJavaPeerable.Finalized()

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.

(Heredado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

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.

(Heredado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

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.

(Heredado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

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.

(Heredado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

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.

(Heredado de JavaObject)

Métodos de extensión

Nombre Description
GetJniTypeName(IJavaPeerable)

Obtiene el nombre JNI del tipo de la instancia self.

JavaAs<TResult>(IJavaPeerable)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

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.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

Se aplica a