报告隐式转换为 long 的整数乘法或左移位。

示例:


  void f(int i) {
    long val = 65536 * i;
  }

应用快速修复后,代码变为:


  void x(int i) {
    long val = 65536L * i;
  }

示例:


  void f(int i) {
    long value = i << 24;
  }

应用快速修复后,代码变为:


  void f(int i) {
    long value = (long) i << 24;
  }

这样的乘法通常表明有错误,因为可能会意外发生溢出截断。 将 int 文字转换为 long 文字 (65536L) 可以修复该问题。