ループ内など、場合によってはボクシングによってパフォーマンスが大幅に低下する場合があります。
ボクシング操作の数を予測するため、ヒューリスティックが適用されます。 たとえば、ループ内の変換ははるかに多いと見なされます。
例:
public void example() {
Integer value = 12;
needBox(value);
for (int i = 0; i < 10; i++) {
// ループの使用頻度は高いと見なされます
needPrimitive(value);
}
}
void needPrimitive(int value) {}
void needBox(Integer value) {}
クイックフィックス適用後:
public void example() {
int value = 12;
needBox(value);
for (int i = 0; i < 10; i++) {
// ループの使用頻度は高いと見なされます
needPrimitive(value);
}
}
void needPrimitive(int value) {}
void needBox(Integer value) {}
2018.2 の新機能です