1

我想创建一个自定义 PMD 规则,以消除 BigDecimal 对象的实例化(即 new BigDecimal(value) )。我需要执行 BigDecimal.valueof(value) 实现。

我不知道如何实现这一点。有一些我可以使用的例子吗?

谢谢,巴斯亨德里克斯

4

1 回答 1

3

您可以使用IntegerInstantiation的实现作为示例。

但请确保不要禁止使用所有 BigDecimal 构造函数。只有三种BigDecimal.valueOf方法,并且只有那些需要 long 作为参数的方法应该优于调用构造函数。

无论如何,采用 ​​double 的那个只是调用构造函数,并且无论如何都应该不鼓励使用 double 值构造 BigDecimal。

于 2012-06-07T12:49:49.307 回答