StrictMath Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
La classe StrictMath contiene metodi per eseguire operazioni numeriche di base, ad esempio le funzioni esponenziali elementari, logaritmo, radice quadrata e trigonometrica.
[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
- Ereditarietà
- Attributi
Commenti
La classe StrictMath contiene metodi per eseguire operazioni numeriche di base, ad esempio le funzioni esponenziali elementari, logaritmo, radice quadrata e trigonometrica.
Per garantire la portabilità dei programmi Java, le definizioni di alcune funzioni numeriche in questo pacchetto richiedono che producano gli stessi risultati di determinati algoritmi pubblicati. Questi algoritmi sono disponibili dalla libreria netlib di rete nota come pacchetto "Libreria matematica distribuibile liberamente", fdlibmhttps://www.netlib.org/fdlibm/. Questi algoritmi, scritti nel linguaggio di programmazione C, vengono quindi riconosciuti come traslitterati in Java ed eseguiti con tutte le operazioni a virgola mobile e integer che seguono le regole di Java aritmetica. Nella traslitterazione vengono usate le trasformazioni seguenti:
<Ul><li>Extraction e l'impostazione delle metà alte e basse di un C a 64 bit double vengono espresse usando Java metodi di piattaforma che eseguono conversioni con bit Double#doubleToRawLongBits(double) da {@code double a long} e Double#longBitsToDouble(long) {@code long to double}.
<I valori li>Unsigned int in C vengono mappati ai valori firmati int in Java con aggiornamenti alle operazioni per replicare la semantica senza segno in cui i risultati nella stessa operazione testuale differiscono. Ad esempio, >> i turni sui valori C non firmati vengono sostituiti con >>> turni sui valori di Java firmati. I confronti di dimensioni sui valori C non firmati (<, <=, >, >=) vengono sostituiti con chiamate semanticamente equivalenti a Integer#compareUnsigned(int, int) compareUnsigned.
</ul>
La libreria matematica Java è definita rispetto alla fdlibm versione 5.3. Dove fdlibm fornisce più di una definizione per una funzione (ad esempio acos), usare la versione "FUNZIONE core IEEE 754" (che risiede in un file il cui nome inizia con la lettera e). I metodi che richiedono fdlibm la semantica sono sin, costan, , asin, acos, atanexploglog10cbrtatan2powsinhcoshtanhhypotexpm1e .log1p
La piattaforma usa l'aritmetica di interi aritmetici di complemento di due firmati con tipi primitivi int e long. Lo sviluppatore deve scegliere il tipo primitivo per garantire che le operazioni aritmetiche producano in modo coerente risultati corretti, il che in alcuni casi significa che le operazioni non eseguiranno l'overflow dell'intervallo di valori del calcolo. La procedura consigliata consiste nel scegliere il tipo primitivo e l'algoritmo per evitare l'overflow. Nei casi in cui le dimensioni sono int o long e gli errori di overflow devono essere rilevati, i metodi i cui nomi terminano con Exact generano un'eccezione ArithmeticException quando i risultati superano il flusso.
<h2>Ieee754RecommendedOps>IEEE 754 Recommended Operations</h2>
La java.lang.Math Math classe illustra in che modo la qualità condivisa dei criteri di implementazione per i metodi selezionati Math e StrictMath è correlata alle operazioni consigliate IEEE 754.
Aggiunta nella versione 1.3.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.
Campi
| Nome | Descrizione |
|---|---|
| E |
Valore |
| Pi |
Valore |
| Tau |
Valore |
Proprietà
| Nome | Descrizione |
|---|---|
| Class |
Restituisce la classe di runtime di questo |
| Handle |
Handle per l'istanza di Android sottostante. (Ereditato da Object) |
| JniIdentityHashCode |
Ottiene il codice hash di identità assegnato a questo Java peer dal runtime di interoperabilità. (Ereditato da Object) |
| JniManagedPeerState |
La classe |
| JniPeerMembers |
Ottiene i metadati JNI usati per richiamare i membri di questo peer Java. |
| PeerReference |
Ottiene il riferimento all'oggetto JNI per questo peer Java. (Ereditato da Object) |
| ThresholdClass |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. (Ereditato da Object) |
| ThresholdType |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. (Ereditato da Object) |
Metodi
| Nome | Descrizione |
|---|---|
| Abs(Double) |
Restituisce il valore assoluto di un |
| Abs(Int32) |
Restituisce il valore assoluto di un |
| Abs(Int64) |
Restituisce il valore assoluto di un |
| Abs(Single) |
Restituisce il valore assoluto di un |
| AbsExact(Int32) |
Restituisce il valore assoluto matematico di un |
| AbsExact(Int64) |
Restituisce il valore assoluto matematico di un |
| Acos(Double) |
Restituisce l'arco coseno di un valore; l'angolo restituito è compreso nell'intervallo 0. |
| AddExact(Int32, Int32) |
Restituisce la somma dei relativi argomenti, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| AddExact(Int64, Int64) |
Restituisce la somma dei relativi argomenti, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| Asin(Double) |
Restituisce il seno arco di un valore; l'angolo restituito è compreso nell'intervallo da -pi/2 a pi/2. |
| Atan(Double) |
Restituisce l'arco tangente di un valore; l'angolo restituito è compreso nell'intervallo da -pi/2 a pi/2. |
| Atan2(Double, Double) |
Restituisce l'angolo dell'angolo dalla conversione di coordinate rettangolari ( |
| Cbrt(Double) |
Restituisce la radice del cubo di un |
| Ceil(Double) |
Restituisce il valore più piccolo (più vicino all'infinito negativo) |
| CeilDiv(Int32, Int32) |
Restituisce il valore più piccolo (più vicino all'infinito negativo) |
| CeilDiv(Int64, Int32) |
Restituisce il valore più piccolo (più vicino all'infinito negativo) |
| CeilDiv(Int64, Int64) |
Restituisce il valore più piccolo (più vicino all'infinito negativo) |
| CeilDivExact(Int32, Int32) |
Restituisce il valore più piccolo (più vicino all'infinito negativo) |
| CeilDivExact(Int64, Int64) |
Restituisce il valore più piccolo (più vicino all'infinito negativo) |
| CeilMod(Int32, Int32) |
Restituisce il modulo di soffitto degli |
| CeilMod(Int64, Int32) |
Restituisce il modulo massimo degli |
| CeilMod(Int64, Int64) |
Restituisce il modulo di soffitto degli |
| Clamp(Double, Double, Double) |
Blocca il valore per adattarsi tra min e max. |
| Clamp(Int64, Int32, Int32) |
Blocca il valore per adattarsi tra min e max. |
| Clamp(Int64, Int64, Int64) |
Blocca il valore per adattarsi tra min e max. |
| Clamp(Single, Single, Single) |
Blocca il valore per adattarsi tra min e max. |
| Clone() |
Crea e restituisce una copia di questo oggetto. (Ereditato da Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
La classe |
| CopySign(Double, Double) |
Restituisce il primo argomento a virgola mobile con il segno del secondo argomento a virgola mobile. |
| CopySign(Single, Single) |
Restituisce il primo argomento a virgola mobile con il segno del secondo argomento a virgola mobile. |
| Cos(Double) |
Restituisce il coseno trigonometrico di un angolo. |
| Cosh(Double) |
Restituisce il coseno iperbolico di un |
| DecrementExact(Int32) |
Restituisce l'argomento decrementato di uno, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| DecrementExact(Int64) |
Restituisce l'argomento decrementato da uno, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| Dispose() |
Rilascia le risorse contenute in questo peer Java. (Ereditato da Object) |
| Dispose(Boolean) |
Rilascia le risorse contenute in questo peer Java. (Ereditato da Object) |
| DisposeUnlessReferenced() |
La classe |
| DivideExact(Int32, Int32) |
Restituisce il quoziente degli argomenti, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| DivideExact(Int64, Int64) |
Restituisce il quoziente degli argomenti, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| Equals(Object) |
La classe |
| Equals(Object) |
Indica se un altro oggetto è "uguale a" questo. (Ereditato da Object) |
| Exp(Double) |
Restituisce il numero di Eulero e elevato alla potenza di un |
| Expm1(Double) |
Restituisce e<sup>x</sup> -1. |
| Floor(Double) |
Restituisce il valore più grande (più vicino all'infinito positivo) |
| FloorDiv(Int32, Int32) |
Restituisce il valore più grande (più vicino all'infinito positivo) |
| FloorDiv(Int64, Int32) |
Restituisce il valore più grande (più vicino all'infinito positivo) |
| FloorDiv(Int64, Int64) |
Restituisce il valore più grande (più vicino all'infinito positivo) |
| FloorDivExact(Int32, Int32) |
Restituisce il valore più grande (più vicino all'infinito positivo) |
| FloorDivExact(Int64, Int64) |
Restituisce il valore più grande (più vicino all'infinito positivo) |
| FloorMod(Int32, Int32) |
Restituisce il modulo floor degli |
| FloorMod(Int64, Int32) |
Restituisce il modulo floor degli |
| FloorMod(Int64, Int64) |
Restituisce il modulo floor degli |
| Fma(Double, Double, Double) |
Restituisce l'aggiunta di multipli fusi dei tre argomenti; ovvero restituisce il prodotto esatto dei primi due argomenti sommati con il terzo argomento e quindi arrotondato una volta all'oggetto più |
| Fma(Single, Single, Single) |
Restituisce l'aggiunta di multipli fusi dei tre argomenti; ovvero restituisce il prodotto esatto dei primi due argomenti sommati con il terzo argomento e quindi arrotondato una volta all'oggetto più |
| GetExponent(Double) |
Restituisce l'esponente non distorto utilizzato nella rappresentazione di un oggetto |
| GetExponent(Single) |
Restituisce l'esponente non distorto utilizzato nella rappresentazione di un oggetto |
| GetHashCode() |
Restituisce un valore di codice hash per l'oggetto . (Ereditato da Object) |
| Hypot(Double, Double) |
Restituisce sqrt(x<sup>2</sup> +y<sup>2</sup>) senza overflow intermedio o underflow. |
| IEEEremainder(Double, Double) |
Calcola l'operazione di resto su due argomenti come previsto dallo standard IEEE 754. |
| IncrementExact(Int32) |
Restituisce l'argomento incrementato di uno, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| IncrementExact(Int64) |
Restituisce l'argomento incrementato di uno, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| JavaFinalize() |
Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto . (Ereditato da Object) |
| Log(Double) |
Restituisce il logaritmo naturale (base e) di un |
| Log10(Double) |
Restituisce il logaritmo di base 10 di un |
| Log1p(Double) |
Restituisce il logaritmo naturale della somma dell'argomento e 1. |
| Max(Double, Double) |
Restituisce il valore maggiore di due |
| Max(Int32, Int32) |
Restituisce il valore maggiore di due |
| Max(Int64, Int64) |
Restituisce il valore maggiore di due |
| Max(Single, Single) |
Restituisce il valore maggiore di due |
| Min(Double, Double) |
Restituisce il più piccolo di due |
| Min(Int32, Int32) |
Restituisce il più piccolo di due |
| Min(Int64, Int64) |
Restituisce il più piccolo di due |
| Min(Single, Single) |
Restituisce il più piccolo di due |
| MultiplyExact(Int32, Int32) |
Restituisce il prodotto degli argomenti, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| MultiplyExact(Int64, Int32) |
Restituisce il prodotto degli argomenti, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| MultiplyExact(Int64, Int64) |
Restituisce il prodotto degli argomenti, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| MultiplyFull(Int32, Int32) |
Restituisce il prodotto matematico esatto degli argomenti. |
| MultiplyHigh(Int64, Int64) |
Restituisce come |
| NegateExact(Int32) |
Restituisce la negazione dell'argomento , generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| NegateExact(Int64) |
Restituisce la negazione dell'argomento, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| NextAfter(Double, Double) |
Restituisce il numero a virgola mobile adiacente al primo argomento nella direzione del secondo argomento. |
| NextAfter(Single, Double) |
Restituisce il numero a virgola mobile adiacente al primo argomento nella direzione del secondo argomento. |
| NextDown(Double) |
Restituisce il valore a virgola mobile adiacente a |
| NextDown(Single) |
Restituisce il valore a virgola mobile adiacente a |
| NextUp(Double) |
Restituisce il valore a virgola mobile adiacente alla |
| NextUp(Single) |
Restituisce il valore a virgola mobile adiacente alla |
| Notify() |
Riattiva un singolo thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
| NotifyAll() |
Riattiva tutti i thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
| Pow(Double, Double) |
Restituisce il valore del primo argomento elevato alla potenza del secondo argomento. |
| Random() |
Restituisce un |
| Rint(Double) |
Restituisce il |
| Round(Double) |
Restituisce il valore più |
| Round(Single) |
Restituisce il valore più |
| Scalb(Double, Int32) |
Restituisce |
| Scalb(Single, Int32) |
Restituisce |
| SetHandle(IntPtr, JniHandleOwnership) |
Imposta la proprietà Handle. (Ereditato da Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
La classe |
| Signum(Double) |
Restituisce la funzione signum dell'argomento; zero se l'argomento è zero, 1. |
| Signum(Single) |
Restituisce la funzione signum dell'argomento; zero se l'argomento è zero, 1. |
| Sin(Double) |
Restituisce il seno trigonometrico di un angolo. |
| Sinh(Double) |
Restituisce il seno iperbolico di un |
| Sqrt(Double) |
Restituisce la radice quadrata positiva arrotondata correttamente di un |
| SubtractExact(Int32, Int32) |
Restituisce la differenza degli argomenti, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| SubtractExact(Int64, Int64) |
Restituisce la differenza degli argomenti, generando un'eccezione se il risultato esegue l'overflow di un oggetto |
| Tan(Double) |
Restituisce la tangente trigonometrica di un angolo. |
| Tanh(Double) |
Restituisce la tangente iperbolica di un |
| ToArray<T>() |
Crea una matrice gestita da questo wrapper di matrice Java. (Ereditato da Object) |
| ToDegrees(Double) |
Converte un angolo misurato in radianti in un angolo approssimativamente equivalente misurato in gradi. |
| ToIntExact(Int64) |
Restituisce il valore dell'argomento , generando un'eccezione |
| ToRadians(Double) |
Converte un angolo misurato in gradi in un angolo approssimativamente equivalente misurato in radianti. |
| ToString() |
Restituisce una rappresentazione di stringa dell'oggetto . (Ereditato da Object) |
| Ulp(Double) |
Restituisce le dimensioni di un ulp dell'argomento. |
| Ulp(Single) |
Restituisce le dimensioni di un ulp dell'argomento. |
| UnregisterFromRuntime() |
Annulla la registrazione di questo Java peer dal runtime di interoperabilità. (Ereditato da Object) |
| UnsignedMultiplyHigh(Int64, Int64) |
Restituisce come |
| Wait() |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>. (Ereditato da Object) |
| Wait(Int64, Int32) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale. (Ereditato da Object) |
| Wait(Int64) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IJavaPeerable.Disposed() |
La classe |
| IJavaPeerable.Finalized() |
La classe |
| IJavaPeerable.JniObjectReferenceControlBlock |
La classe |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
La classe |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
La classe |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
La classe |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ottiene il nome JNI del tipo dell'istanza |
| JavaAs<TResult>(IJavaPeerable) |
Provare a digitare |
| JavaCast<TResult>(IJavaObject) |
Esegue una conversione del tipo di tipo controllato dal runtime Android. |
| JavaCast<TResult>(IJavaObject) |
La classe |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Provare a digitare |