Unnecessary call to 'toString()'
Reports calls to toString()
that are used in the following cases:
In string concatenations
In the
java.lang.StringBuilder#append()
orjava.lang.StringBuffer#append()
methodsIn the methods of
java.io.PrintWriter
orjava.io.PrintStream
in the methods
org.slf4j.Logger
In these cases, conversion to string will be handled by the underlying library methods, and the explicit call to toString()
is not needed. Removing redundant toString()
calls can occasionally even improve performance and reduce object allocations.
Example:
After the quick-fix is applied:
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.
UnnecessaryToStringCall- 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.
Note that without the toString()
call, the code semantics might be different: if the expression is null, then the null
string will be used instead of throwing a NullPointerException
.
Use the Report only when qualifier is known to be not-null option to avoid warnings for the values that could potentially be null. Removing the explicit toString()
in these cases will change the runtime semantics from throwing a NullPointException
to silently accepting the value when it is null
.
Inspection options
Here you can find the description of settings available for the Unnecessary call to 'toString()' inspection, and the reference of their default values.
- Report only when qualifier is known to be not-null
Default: Selected
Inspection Details | |
---|---|
By default bundled with: | |
Can be installed with plugin: | Java, 243.23126 |