我现在正在使用此方法,在任何类型的Number
上执行添加:
public <T extends Number> CustomNumber add(T a, T b) {
BigDecimal numberA = new BigDecimal(b.toString());
BigDecimal numberB = new BigDecimal(a.toString());
return new CustomNumber<>(numberA.add(numberB));
}
我正在使用BigDecimal,因为据我所知这是最佳解决方案,执行精简计算。如何在不使用toString()
方法的情况下更改此方法以获得相同的结果? CustomNumber
是我用来存储数值的类。
答案 0 :(得分:1)
我不会冒险,特别是如果你想从浮点类型构造BigDecimal
。
在最一般的情况下,String
的构造是最安全的方式。始终使用依赖于区域设置的小数分隔符来获取必要的小心。