• Note on valueOf(int) and valueOf(long): We choose the valueOf() methods to compare performance because java.math.BigDecimal has no constructor from long or int. Though this method would enable reuse of BigDecimal objects, we believe none of the tested classes does so for significantly large numbers, and that therefor this has not influenced the benchmark.
  • Note on new BigDecimal(double): To enable comparison we use the constructor new BigDecimal(double), but note that in com.ibm.math and be.arci.math this is deprecated in favor of BigDecimal valueOf(double), which constructs a BigDecimal based on the String representation of a double and hence, though less exact from the double's point of view, is as close as can be to what you would expect when seeing the double rendered in some text field .