Unnecessary zero length array usage
Reports allocations of arrays with known lengths of zero when there is a constant for that in the class of the array's element type. As zero-length arrays are immutable, you can save memory reusing the same array instance.
Example:
class Item {
// Public zero-length array constant that can be reused
public static final Item[] EMPTY_ARRAY = new Item[0];
}
class EmptyNode {
Item[] getChildren() {
// Unnecessary zero-length array creation
return new Item[0];
}
}
After the quick-fix is applied:
class EmptyNode {
Item[] getChildren() {
return Item.EMPTY_ARRAY;
}
}
Locating this inspection
- By ID
Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.
ConstantForZeroLengthArrayAllocation- Via Settings dialog
Path to the inspection settings via IntelliJ Platform IDE Settings dialog, when you need to adjust inspection settings directly from your IDE.
Inspection Details | |
---|---|
By default bundled with: | |
Can be installed with plugin: | Java, 242.22892 |
Last modified: 11 September 2024