Unused assignment
Reports assignment values that are not used after assignment. If the assignment value is unused, it's better to remove the assignment to shorten the code and avoid redundant allocations.
The following cases are reported:
variables that are never read after assignment
variables that are always overwritten with a new value before being read
variable initializers that are redundant (for one of the two reasons above)
- 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.
UnusedAssignment
Configure the inspection:
Use the Report redundant initializers option to report redundant initializers:
int getI() {
int i = 0; // redundant initialization
i = 2;
return i;
}
Use the Report prefix expressions that can be replaced with binary expressions option to report cases where an ++i
expression may be replaced with i + 1
:
int preInc(int value) {
int res = value;
return ++res;
}
Use the Report postfix expressions where the changed value is not used option to report i++
cases where the value of i
is not used later:
int postInc(int value) {
int res = value;
return res++;
}
Use the Report pattern variables whose values are never used option to report cases where the value of a pattern variable is overwritten before it is read:
if (object instanceof String s) {
s = "hello";
System.out.println(s);
}
Use the Report iteration parameters whose values are never used option to report cases where the value of an iteration parameter of an enhanced for
statements is overwritten before it is read:
for (String arg : args) {
arg = "test";
System.out.println(arg);
}
Here you can find the description of settings available for the Unused assignment inspection, and the reference of their default values.
Inspection Details | |
---|---|
By default bundled with: | |
Can be installed with plugin: | Java, 243.23126 |
Thanks for your feedback!