Comment on Using BigInteger and BigDecimal only?
TauZero@mander.xyz 1 year ago
The arbitrary precision may cause your bignums to balloon out of control in memory/cpu usage after repeated multiplication, unless you can prove that it will not. For example:
double x = 1; while (true){ x *= Math.exp((Math.random()*2 - 1) / 1000); }
Would work perfectly fine with floats and x will remain about 1, but with BigDecimal it will grind to a halt.
TheCee@programming.dev 1 year ago
Interesting. Is there a way to set a limit to the size of individual instances?
TauZero@mander.xyz 1 year ago
Give it a MathContext with the max precision that you want to allow.
TheCee@programming.dev 1 year ago
Thanks, that doesn’t sound so bad.