public class InefficientEmptyStringCheck extends AbstractInefficientZeroCheck
if(str.trim().length()==0){....
is quite inefficient as trim() causes a new String to be created.
Smarter code to check for an empty string would be:
Character.isWhitespace(str.charAt(i));
LOWEST_PRIORITY, PRIORITIES| Constructor and Description |
|---|
InefficientEmptyStringCheck() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
appliesToClassName(java.lang.String name) |
boolean |
isTargetMethod(NameOccurrence occ)
Determine if we're dealing with String.length method
|
visitaddViolation, addViolation, addViolation, addViolationWithMessage, apply, getDeclaringType, importsPackage, isQualifiedName, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitAlladdExample, addProperties, addProperty, addRuleChainVisit, asFixedMap, asFixedMap, end, equals, getBooleanProperties, getBooleanProperty, getBooleanProperty, getDescription, getDoubleProperties, getDoubleProperty, getDoubleProperty, getExample, getExamples, getExternalInfoUrl, getIntProperties, getIntProperty, getIntProperty, getMessage, getName, getPriority, getPriorityName, getProperties, getRuleChainVisits, getRuleClass, getRuleSetName, getSince, getStringProperties, getStringProperty, getStringProperty, getTypeProperties, getTypeProperty, hashCode, hasProperty, include, propertiesByName, propertyDescriptorFor, setDescription, setExternalInfoUrl, setInclude, setMessage, setName, setPriority, setProperties, setProperty, setRuleClass, setRuleSetName, setSince, setUsesDFA, setUsesTypeResolution, start, usesDFA, usesRuleChain, usesTypeResolutionpublic boolean isTargetMethod(NameOccurrence occ)
isTargetMethod in class AbstractInefficientZeroCheckocc - The name occurancepublic boolean appliesToClassName(java.lang.String name)
appliesToClassName in class AbstractInefficientZeroCheck