示例:
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
) 可以修正该问题。