请教个BigDecimal的原因

请问个BigDecimal的原因、代码一:Java code BigDecimal b new BigDecimal(12.355).setScale(2,BigDecim

请问个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 修饰的关系吧?