Ben*_*nJC 2 java enums bigdecimal deprecated deprecation-warning
我正在尝试使用以下内容指定BigDecimal值的精度:new BigDecimal(12.99).setScale(2, BigDecimal.ROUND_HALF_EVEN.但是,编译器告诉我setScale(int, int)已弃用.
当我尝试使用RoundingMode枚举时,它告诉我枚举可能尚未初始化.如何正确使用枚举来实例化BigDecimals setScale(int, RoundingMode)?
谢谢!
根据文档,setScale(int, int)自Java 1.5首次引入枚举以来,不建议使用,
setScale(int, RoundingMode)应优先于此旧方法使用新方法。
最终在Java 9中弃用了它。
您应该打电话给setScale(2, RoundingMode.HALF_EVEN)。由于您不能传入undefined,所以它使错误检查更加容易,enum但是您当然可以传入undefined的整数模式。
你不应该"实例化"枚举,而是使用它的常量.你有没有尝试过:
new BigDecimal(12.99).setScale(2, RoundingMode.HALF_EVEN);
Run Code Online (Sandbox Code Playgroud)
请注意,您还可以使用字符串构造函数:
new BigDecimal("12.99");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3871 次 |
| 最近记录: |