当前位置: 代码迷 >> J2EE >> 请教个BigDecimal的原因
  详细解决方案

请教个BigDecimal的原因

热度:43   发布时间:2016-04-22 00:34:46.0
请问个BigDecimal的原因、
代码一:

 
Java code
 BigDecimal b = new BigDecimal("12.355").setScale(2,BigDecimal.ROUND_UP);    System.out.println(b.floatValue());


代码二:

 
Java code
 BigDecimal b = new BigDecimal("12.355");    b.setScale(2,BigDecimal.ROUND_UP);    System.out.println(b.floatValue());



代码都一样、只是分开来写了、请问结果是一样吗?为什么、



------解决方案--------------------
BigDecimal 的说明中,第一句话很重要:
Immutable, arbitrary-precision signed decimal numbers.

相信你已经当场恍然大悟了,哈哈~~~
------解决方案--------------------
BigDecimal 是不可变的、、、、
------解决方案--------------------
探讨
是因为 volatile transient 修饰的关系吧?