public final class StringLiteralsConcatenationCheck extends AbstractCheck
The following constructs are prohibited:
String a = "done in " + time + " seconds";
System.out.println("File not found: " + file);
x += "done";
You should avoid string concatenation at all cost. Why? There are two
reasons: readability of the code and translateability. First of all it's
difficult to understand how the text will look after concatenation,
especially if the text is long and there are more than a few +
operators. Second, you won't be able to translate your text to other
languages later, if you don't have solid string literals.
There are two alternatives to concatenation: StringBuilder
and String.format(String,Object[]).
AutomaticBean.OutputStreamOptions| Constructor and Description |
|---|
StringLiteralsConcatenationCheck() |
| Modifier and Type | Method and Description |
|---|---|
int[] |
getAcceptableTokens() |
int[] |
getDefaultTokens() |
int[] |
getRequiredTokens() |
void |
visitToken(DetailAST ast) |
beginTree, clearMessages, destroy, finishTree, getClassLoader, getFileContents, getLine, getLines, getMessages, getTabWidth, getTokenNames, init, isCommentNodesRequired, leaveToken, log, log, log, setClassLoader, setFileContents, setTabWidth, setTokensfinishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverityconfigure, contextualize, getConfiguration, setupChildpublic int[] getDefaultTokens()
getDefaultTokens in class AbstractCheckpublic int[] getAcceptableTokens()
getAcceptableTokens in class AbstractCheckpublic int[] getRequiredTokens()
getRequiredTokens in class AbstractCheckpublic void visitToken(DetailAST ast)
visitToken in class AbstractCheckCopyright © 2011–2019 Qulice.com. All rights reserved.