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
|
visit
addViolation, 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, visitAll
addExample, 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, usesTypeResolution
public boolean isTargetMethod(NameOccurrence occ)
isTargetMethod
in class AbstractInefficientZeroCheck
occ
- The name occurancepublic boolean appliesToClassName(java.lang.String name)
appliesToClassName
in class AbstractInefficientZeroCheck