BigDecimal Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
La BigDecimal classe implémente des nombres décimaux arbitraires immuables.
[Android.Runtime.Register("android/icu/math/BigDecimal", ApiSince=24, DoNotGenerateAcw=true)]
public class BigDecimal : Java.Lang.Number, IDisposable, Java.Lang.IComparable
[<Android.Runtime.Register("android/icu/math/BigDecimal", ApiSince=24, DoNotGenerateAcw=true)>]
type BigDecimal = class
inherit Number
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface IComparable
- Héritage
- Attributs
- Implémente
Remarques
La BigDecimal classe implémente des nombres décimaux arbitraires immuables. Les méthodes de la BigDecimal classe fournissent des opérations pour l’arithmétique fixe et à virgule flottante, la comparaison, les conversions de format et le hachage.
Comme les nombres sont décimaux, il existe une correspondance exacte entre une instance d’un BigDecimal objet et sa String représentation ; la BigDecimal classe fournit des conversions directes vers et à partir String d’objets de tableau de caractères (char[]), ainsi que des conversions vers et depuis les types primitifs Java (qui ne sont peut-être pas exacts) et BigInteger.
Dans les descriptions des constructeurs et méthodes de cette documentation, la valeur d’un BigDecimal objet nombre est affichée comme résultat de l’appel de la toString() méthode sur l’objet. La représentation interne d’un nombre décimal n’est ni définie ni exposée, et n’est pas autorisée à affecter le résultat d’une opération.
L’arithmétique à virgule flottante fournie par cette classe est définie par la norme ANSI X3.274-1996 et est également documentée à http://www2.hursley.ibm.com/decimal<br>[Cette URL change.]<Méthodes> d’opérateur h3</h3>
Les opérations sur BigDecimal les nombres sont contrôlées par un MathContext objet, qui fournit le contexte (précision et autres informations) pour l’opération. Les méthodes qui peuvent prendre un MathContext paramètre implémentent les opérateurs arithmétiques standard pour BigDecimal les objets et sont appelées méthodes d’opérateur. Les paramètres par défaut fournis par la constante MathContext#DEFAULT (digits=9, form=SCIENTIFIC, lostDigits=false, roundingMode=ROUND_HALF_UP) effectuent des arithmétiques à virgule flottante à usage général à neuf chiffres de précision. Le MathContext paramètre ne doit pas être null.
Chaque méthode d’opérateur a également une version fournie qui ne prend pas de MathContext paramètre. Pour cette version de chaque méthode, les paramètres de contexte utilisés sont digits=0, form=PLAIN, lostDigits=false, roundingMode=ROUND_HALF_UPles suivants : ces paramètres effectuent une arithmétique de point fixe avec une précision illimitée, comme défini pour la classe BigDecimal d’origine dans Java 1.1 et Java 1.2.
Pour les opérateurs monadiques, seul le paramètre facultatif MathContext est présent ; l’opération agit sur l’objet actuel.
Pour les opérateurs dyadiciques, un BigDecimal paramètre est toujours présent ; il ne doit pas être null. L’opération agit avec l’objet actuel étant l’opérande de gauche et le BigDecimal paramètre étant l’opérande de droite.
Par exemple, l’ajout de deux BigDecimal objets appelés par les noms award peut extra être écrit en tant qu’un des éléments suivants :
award.add(extra) <br>award.add(extra, MathContext.DEFAULT) <br>award.add(extra, acontext)
(où acontext est un MathContext objet), qui renvoie un BigDecimal objet dont la valeur est le résultat de l’ajout award et extra sous les paramètres de contexte appropriés.
Lorsqu’une méthode d’opérateur BigDecimal est utilisée, un ensemble de règles définit ce que sera le résultat (et, par implication, comment le résultat serait représenté sous forme de chaîne de caractères). Ces règles sont définies dans la documentation arithmétique BigDecimal (voir l’URL ci-dessus), mais en résumé : <les résultats ul><li>sont normalement calculés avec jusqu’à un nombre maximal de chiffres significatifs. Par exemple, si le MathContext paramètre d’une opération était MathContext.DEFAULT alors le résultat serait arrondi à 9 chiffres ; la division de 2 par 3 entraînerait alors 0,66666667.
<br> Vous pouvez modifier la valeur par défaut de 9 chiffres significatifs en fournissant la méthode avec un objet approprié MathContext . Cela vous permet de calculer à l’aide du nombre de chiffres dont vous avez besoin : des milliers, si nécessaire. L’arithmétique de point fixe (mis à l’échelle) est indiquée à l’aide d’un digits paramètre de 0 (ou omettant le MathContext paramètre).
<br> de même, vous pouvez modifier l’algorithme utilisé pour l’arrondi à partir de l’algorithme « classique » par défaut.
<li> Dans l’arithmétique standard (autrement dit, lorsque le form paramètre n’est pas PLAIN), un résultat zéro est toujours exprimé en tant que chiffre '0' unique (autrement dit, sans signe, point décimal ou partie exposant).
<à> l’exception des opérateurs de division et de puissance dans l’arithmétique standard, les zéros de fin sont conservés (contrairement aux opérations à virgule flottante binaire et à la plupart des calculatrices électroniques, qui perdent les informations sur les zéros de fin dans la partie fractionnaire des résultats).
<br> So, par exemple :
new BigDecimal("2.40").add( new BigDecimal("2")) => "4.40" <br>new BigDecimal("2.40").subtract(new BigDecimal("2")) => "0.40" <br>new BigDecimal("2.40").multiply(new BigDecimal("2")) => "4.80" <br>new BigDecimal("2.40").divide( new BigDecimal("2"), def) => "1.2"
où la valeur à droite de l’opération => serait le résultat de l’opération, exprimée sous la forme d’un String, et def (dans ces exemples et suivants) fait référence à MathContext.DEFAULT ). Cette conservation des zéros de fin est souhaitable pour la plupart des calculs (y compris les calculs financiers). Si nécessaire, les zéros de fin peuvent être facilement supprimés à l’aide de la division par 1.
<li> Dans l’arithmétique standard, la forme exponentielle est utilisée pour un résultat en fonction de sa valeur et du paramètre actuel de digits (la valeur par défaut est de 9 chiffres). Si le nombre de places nécessaires avant que la virgule décimale dépasse le digits paramètre, ou si la valeur absolue du nombre est inférieure 0.000001à , le nombre est exprimé en notation exponentielle ; par conséquent, le nombre est exprimé en notation exponentielle.
new BigDecimal("1e+6").multiply(new BigDecimal("1e+6"), def)
aboutit au 1E+12 lieu de 1000000000000, et
new BigDecimal("1").divide(new BigDecimal("3E+10"), def)
aboutit au 3.33333333E-11 lieu de 0.0000000000333333333.
La forme de la notation exponentielle (scientifique ou ingénierie) est déterminée par le form paramètre.
</ul>
Les noms de méthodes de cette classe suivent les conventions établies par java.lang.Number, java.math.BigIntegeret java.math.BigDecimal dans Java 1.1 et Java 1.2.
Java documentation pour android.icu.math.BigDecimal.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.
Constructeurs
| Nom | Description |
|---|---|
| BigDecimal(BigDecimal) |
Construit un |
| BigDecimal(BigInteger, Int32) |
Construit un |
| BigDecimal(BigInteger) |
Construit un |
| BigDecimal(Char[], Int32, Int32) |
Construit un |
| BigDecimal(Char[]) |
Construit un |
| BigDecimal(Double) |
Construit un |
| BigDecimal(Int32) |
Construit un |
| BigDecimal(Int64) |
Construit un |
| BigDecimal(IntPtr, JniHandleOwnership) |
La |
| BigDecimal(String) |
Construit un |
Champs
| Nom | Description |
|---|---|
| RoundCeiling |
Obsolète.
Mode arrondi pour arrondir à un nombre plus positif. |
| RoundDown |
Obsolète.
Mode arrondi pour arrondir vers zéro. |
| RoundFloor |
Obsolète.
Mode arrondi pour arrondir à un nombre plus négatif. |
| RoundHalfDown |
Obsolète.
Mode arrondi pour arrondir au voisin le plus proche, où une valeur équidistante est arrondie vers le bas. |
| RoundHalfEven |
Obsolète.
Mode arrondi pour arrondir au voisin le plus proche, où une valeur équidistante est arrondie au voisin pair le plus proche. |
| RoundHalfUp |
Obsolète.
Mode arrondi pour arrondir au voisin le plus proche, où une valeur équidistante est arrondie. |
| RoundUnnecessary |
Obsolète.
Mode arrondi pour affirmer qu’aucune arrondi n’est nécessaire. |
| RoundUp |
Obsolète.
Mode arrondi pour arrondir à zéro. |
Propriétés
| Nom | Description |
|---|---|
| Class |
Retourne la classe runtime de ce |
| Handle |
Handle de l’instance Android sous-jacente. (Hérité de Object) |
| JniIdentityHashCode |
Obtient le code de hachage d’identité affecté à cet homologue Java par le runtime d’interopérabilité. (Hérité de Object) |
| JniManagedPeerState |
La |
| JniPeerMembers |
La |
| One |
Constante |
| PeerReference |
Obtient la référence d’objet JNI pour cet homologue Java. (Hérité de Object) |
| Ten |
Constante |
| ThresholdClass |
La |
| ThresholdType |
La |
| Zero |
Constante |
Méthodes
| Nom | Description |
|---|---|
| Abs() |
Retourne une valeur dont |
| Abs(MathContext) |
Retourne une |
| Add(BigDecimal, MathContext) |
Retourne une |
| Add(BigDecimal) |
Retourne une valeur simple |
| ByteValue() |
Retourne la valeur du nombre spécifié en tant que |
| ByteValueExact() |
Convertit cette |
| Clone() |
Crée et retourne une copie de cet objet. (Hérité de Object) |
| CompareTo(BigDecimal, MathContext) |
Compare cela |
| CompareTo(BigDecimal) |
Compare cela |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
La |
| Dispose() |
Libère les ressources détenues par cet homologue Java. (Hérité de Object) |
| Dispose(Boolean) |
Libère les ressources détenues par cet homologue Java. (Hérité de Object) |
| DisposeUnlessReferenced() |
La |
| Divide(BigDecimal, Int32, RoundOptions) |
Retourne une valeur dont |
| Divide(BigDecimal, MathContext) |
Retourne une |
| Divide(BigDecimal, RoundOptions) |
Retourne une valeur simple |
| Divide(BigDecimal) |
Retourne une valeur simple |
| DivideInteger(BigDecimal, MathContext) |
Retourne une |
| DivideInteger(BigDecimal) |
Retourne une valeur dont |
| DoubleValue() |
Convertit cette |
| Equals(Object) |
La |
| Equals(Object) |
Indique si un autre objet est « égal à » celui-ci. (Hérité de Object) |
| FloatValue() |
Convertit cette |
| Format(Int32, Int32, Int32, Int32, Int32, RoundOptions) |
Retourne la |
| Format(Int32, Int32) |
Retourne la |
| GetHashCode() |
Retourne une valeur de code de hachage pour l’objet. (Hérité de Object) |
| IntValue() |
Convertit cela |
| IntValueExact() |
Convertit cela |
| JavaFinalize() |
Obsolète.
Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet. (Hérité de Object) |
| LongValue() |
Convertit cette |
| LongValueExact() |
Convertit cette |
| Max(BigDecimal, MathContext) |
Retourne une |
| Max(BigDecimal) |
Retourne une valeur dont |
| Min(BigDecimal, MathContext) |
Retourne une |
| Min(BigDecimal) |
Retourne une valeur dont |
| MovePointLeft(Int32) |
Retourne une plaine |
| MovePointRight(Int32) |
Retourne une zone dont |
| Multiply(BigDecimal, MathContext) |
Retourne une |
| Multiply(BigDecimal) |
Retourne une valeur simple |
| Negate() |
Retourne une valeur dont |
| Negate(MathContext) |
Retourne une |
| Notify() |
Réveille un thread unique qui attend le moniteur de cet objet. (Hérité de Object) |
| NotifyAll() |
Réveille tous les threads qui attendent le moniteur de cet objet. (Hérité de Object) |
| Plus() |
Retourne une valeur dont |
| Plus(MathContext) |
Retourne une |
| Pow(BigDecimal, MathContext) |
Retourne une |
| Pow(BigDecimal) |
Retourne une valeur simple |
| Remainder(BigDecimal, MathContext) |
Retourne une |
| Remainder(BigDecimal) |
Retourne une valeur dont |
| Scale() |
Retourne l’échelle de ce |
| SetHandle(IntPtr, JniHandleOwnership) |
Définit la propriété Handle. (Hérité de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
La |
| SetScale(Int32, RoundOptions) |
Retourne une plaine |
| SetScale(Int32) |
Retourne une plaine |
| ShortValue() |
Retourne la valeur du nombre spécifié en tant que |
| ShortValueExact() |
Convertit cette |
| Signum() |
Retourne le signe de ce |
| Subtract(BigDecimal, MathContext) |
Retourne une |
| Subtract(BigDecimal) |
Retourne une valeur simple |
| ToArray<T>() |
Crée un tableau managé à partir de ce wrapper de tableau Java. (Hérité de Object) |
| ToBigDecimal() |
Convertit cette |
| ToBigInteger() |
Convertit cette |
| ToBigIntegerExact() |
Convertit cette |
| ToCharArray() |
Retourne le |
| ToString() |
Retourne une représentation sous forme de chaîne de l’objet. (Hérité de Object) |
| UnregisterFromRuntime() |
Annule l’inscription de cet homologue Java à partir du runtime d’interopérabilité. (Hérité de Object) |
| UnscaledValue() |
Retourne le nombre comme un |
| ValueOf(Double) |
Traduit un |
| ValueOf(Int64, Int32) |
Traduit un |
| ValueOf(Int64) |
Traduit un |
| Wait() |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<> (Hérité de Object) |
| Wait(Int64, Int32) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
| Wait(Int64) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| IComparable.CompareTo(Object) |
La |
| IJavaPeerable.Disposed() |
La |
| IJavaPeerable.Finalized() |
La |
| IJavaPeerable.JniObjectReferenceControlBlock |
La |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
La |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
La |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
La |
| IJavaPeerable.UnregisterFromRuntime() |
La |
Méthodes d’extension
| Nom | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtient le nom JNI du type de l’instance |
| JavaAs<TResult>(IJavaPeerable) |
Essayez de forcer |
| JavaCast<TResult>(IJavaObject) |
Effectue une conversion de type vérifiée par le runtime Android. |
| JavaCast<TResult>(IJavaObject) |
La |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Essayez de forcer |