besoin d'aide bidouillage BigInteger BigDecimal [Java] - Java - Programmation
Marsh Posté le 14-12-2002 à 21:05:41
EpoK a écrit : comment |
Ba d'après ce que je lis dans la doc, t'as le choix :
* soit tu convertis tout en double pour le le temps de l'opération, genre terme = new BigDecimal(1/(x.doubleValue()));
* soit tu te tapes un truc bien laid du genre conversion de ton BigInteger en BigDecimal (via le constructeur de BigDecimal qui va bien) et tu utilises la méthode divide() de BigDecimal.
Perso je penche pour la première solution.
En même temps, je connais pas du tout ces classes, j'ai simplement regardé dans la doc et déduit les possibilités qui s'offraient. Javadoc roulèze
Marsh Posté le 15-12-2002 à 12:22:58
Taiche a écrit : |
rah bo boulot
double doubleValue()
Converts this BigInteger to a double.
j'l'avais raté suila !!
thx
Marsh Posté le 15-12-2002 à 13:01:51
Euuh, dites, je me pose une question : un BigInteger est forcé de tenir dans un double ? Je veux dire si c'est un vraiment BIG, y'a pas un risque de perte dans la conversion ?
Marsh Posté le 15-12-2002 à 16:44:21
R3g a écrit : Euuh, dites, je me pose une question : un BigInteger est forcé de tenir dans un double ? Je veux dire si c'est un vraiment BIG, y'a pas un risque de perte dans la conversion ? |
heu c'est même quasiment garanti que tu va perdre des chiffes, pas contre, sur la précision relative, ça devrait pas être catastrophique.
D'ailleur je sais pas comment il va convertir ça mais ça doit pas être beau en complexité.
Marsh Posté le 15-12-2002 à 18:31:31
nraynaud a écrit : |
héhé
Marsh Posté le 16-12-2002 à 09:01:31
BigInteger ne prononçez jamais ce mot
Marsh Posté le 16-12-2002 à 09:20:38
DarkLord a écrit : BigInteger ne prononçez jamais ce mot |
...Elle t'as fait des misères la classe BigInteger ?
Marsh Posté le 16-12-2002 à 09:29:29
El_Gringo a écrit : |
Un exemple parmis tant d'autre
Code :
|
sachant que mainnotifificationtypeid est un BigDecimal et que CANCEL est un public static final int et sachant aussi que les seules valeurs possible de mainotificationtypeid sont 1,2,3,4 et 5 ...
Un consultant qui ne sait pas ce qu'est int, long, double ... :'(
Marsh Posté le 14-12-2002 à 18:43:08
comment
faire ca :
terme = 1 / x
sache
que :
terme = BigDecimal
x = BigInteger