String concatenation as argument to 'MessageFormat.format()' call
Reports non-constant string concatenations used as an argument to a call to MessageFormat.format()
.
While occasionally intended, this is usually a misuse of the formatting method and may even cause unexpected exceptions if the variables used in the concatenated string contain special characters like {
.
Also, sometimes this could be the result of mistakenly concatenating a string format argument by typing a +
when a ,
was meant.
Example:
Here, the userName
will be interpreted as a part of the format string, which may result in IllegalArgumentException
(for example, if userName
is "{"
). This call should be probably replaced with MessageFormat.format("Hello, {0}! Your balance is {1}.", userName, balance)
.
Inspection Details | |
---|---|
Available in: | IntelliJ IDEA 2023.3, Qodana for JVM 2023.3 |
Plugin: | Java, 233.SNAPSHOT |