我想创建一个自定义 PMD 规则,以消除 BigDecimal 对象的实例化(即 new BigDecimal(value) )。我需要执行 BigDecimal.valueof(value) 实现。
我不知道如何实现这一点。有一些我可以使用的例子吗?
谢谢,巴斯亨德里克斯
您可以使用IntegerInstantiation的实现作为示例。
但请确保不要禁止使用所有 BigDecimal 构造函数。只有三种BigDecimal.valueOf
方法,并且只有那些需要 long 作为参数的方法应该优于调用构造函数。
无论如何,采用 double 的那个只是调用构造函数,并且无论如何都应该不鼓励使用 double 值构造 BigDecimal。