Checkstyle 不喜欢常量的商表达式

Checkstyle doesn't like quotient expression for constant

private static final int DEFAULT_SIZE_IN_BYTES = 256 * 1024;

private static final double SPECIAL_RATIO = 4.0 / 3.0;

我们的 Checkstyle 很好,第一个常量由乘积表达式建立,但它抱怨第二个常量的商表达式中的两个文字本身都是幻数。有没有办法告诉 Checkstyle 接受一个有效的文字商?

根据MagicNumberCheck.java#L109,数字文字和封闭常量定义之间允许使用以下标记,不被视为幻数:

  • 分配 (=),
  • ARRAY_INIT(数组初始化器),
  • EXPR(任何表达式),
  • UNARY_PLUS (+),
  • UNARY_MINUS (-),
  • TYPECAST(强制转换运算符),
  • ELIST(表达式列表),
  • LITERAL_NEW (new),
  • METHOD_CALL(方法调用),
  • 星级 (*)

如您所见,列表中没有 DIV (/) 标记,不幸的是,此列表不可配置。

我已经打开 the issue and pull request 以在下一版本的 Checkstyle 中修复它。

编辑:

拉取请求已合并,此功能将在 Checkstyle 6.7 中发布。