Articles of bigdecimal

Logarithme d’un BigDecimal

Comment puis-je calculer le logarithme d’un BigDecimal? Est-ce que quelqu’un connaît des algorithmes que je peux utiliser? Mon googler jusqu’à présent a eu l’idée (inutile) de simplement convertir en double et d’utiliser Math.log. Je vais fournir la précision de la réponse requirejse. edit: n’importe quelle base fera l’affaire. Si c’est plus facile en base x, […]

Quel mode d’arrondi utiliser pour la manipulation de devise dans Java?

J’ai lu sur le site Java d’utiliser BigDecimal pour les devises. http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html Mais avec quel mode d’arrondi devrions-nous utiliser? qui est le plus approprié et le plus largement nous

Vérifiez si BigDecimal est une valeur entière

Quelqu’un peut-il recommander un moyen efficace de déterminer si un BigDecimal est une valeur entière au sens mathématique? J’ai actuellement le code suivant: private boolean isIntegerValue(BigDecimal bd) { boolean ret; try { bd.toBigIntegerExact(); ret = true; } catch (ArithmeticException ex) { ret = false; } return ret; } … mais souhaite éviter la création d’object […]

Quel est l’équivalent de la classe Java BigDecimal en C #?

BigDecimal est une classe du package java.math qui présente de nombreux avantages pour la gestion de grands nombres d’une certaine échelle. Existe-t-il une classe ou un type de données équivalent dans c # avec cette fonctionnalité?

Pourquoi BigDecimal («5,50») n’est pas égal à BigDecimal («5,5») et comment contourner ce problème?

En fait, j’ai trouvé une solution possible //returns true new BigDecimal(“5.50”).doubleValue() == new BigDecimal(“5.5”).doubleValue() Bien sûr, il peut être amélioré avec quelque chose comme Math.abs (v1 – v2) < EPS pour rendre la comparaison plus robuste, mais la question est de savoir si cette technique est acceptable ou existe-t-il une meilleure solution? Si quelqu’un sait […]

Comment utiliser des opérateurs de comparaison comme>, =, <sur BigDecimal

J’ai une classe de domaine avec unitPrice définie comme type de données BigDecimal. Maintenant, j’essaie de créer une méthode pour comparer les prix, mais il semble que je ne puisse pas avoir d’opérateurs de comparaison dans le type de données BigDecimal. Dois-je changer de type de données ou existe-t-il une autre solution?

Pourquoi toSsortingng ne parvient-il pas à produire la valeur correcte sur un BigDecimal immuable?

import java.math.BigDecimal; import java.math.RoundingMode; public class BigDecimalTest { public static void main (Ssortingng[] args) { // 4.88…e+888 (1817 digits) BigDecimal x = new BigDecimal(“4.+888”); BigDecimal y = new BigDecimal(“7.11510949782866099699296193137700951609335763543887012748548458182417747578081585833524887774072570691956766860384875364912060891737185872746005419263400444156198098581226885923291670353816772414798224148927688218647602446762953730527741703572368727049379249227044080281137229152770971832240631944592537904743732558993126e+302”); BigDecimal z = x.divide(y, 0, RoundingMode.HALF_UP); System.out.println(“x: ” + x.toSsortingng()); System.out.println(); System.out.println(“y: ” + y.toSsortingng()); System.out.println(); System.out.println(“z: ” + z.toSsortingng()); } } Comstackr >javac BigDecimalTest.java Exécuter […]

Suppression des zéros de fin de BigDecimal en Java

Je dois supprimer les zéros de fin de BigDecimal avec RoundingMode.HALF_UP . Par exemple, Value Output 15.3456 15.35 15.999 16 //No trailing zeros. 15.99 15.99 15.0051 15.01 15.0001 15 //No trailing zeros. 15.000000 15 //No trailing zeros. 15.00 15 //No trailing zeros. ssortingpTrailingZeros() fonctionne mais renvoie des notations scientifiques dans des situations telles que new […]

Utilisation de java.math.MathContext

Récemment, j’ai essayé de comprendre l’utilisation de java.math.MathContext mais j’ai échoué à comprendre correctement. Est-il utilisé pour arrondir dans java.math.BigDecimal . Si oui, pourquoi ne pas arrondir les chiffres décimaux mais même la partie mantisse. À partir de la documentation de l’API, j’ai appris qu’elle ANSI X3.274-1996 la norme spécifiée dans ANSI X3.274-1996 et ANSI […]

Comment puis-je parsingr une chaîne en BigDecimal?

J’ai cette chaîne: 10 692 467 4404017 (il s’agit d’un montant). Je veux l’parsingr en BigDecimal. Le problème est que j’ai essayé les deux DecimalFormat et NumbeFormat en vain. De l’aide?