Constant value should always come first in comparison
Published: January 14, 2010 , Updated: August 26, 2010 , Author: mkyong
Normal practice
Constant value comes second in comparison.
private static final String COMPARE_VALUE = "VALUE123"; public boolean compareIt(String input){ if(input.equals(COMPARE_VALUE)){ return true; }else{ return false; } }
Problem
This is fine to compare a constant value with the above method, however it will potentially causing a NullPointerException, if user pass a “null” value for the comparison. For example :
if(input.equals(COMPARE_VALUE)) //hit NullPointerException if input is "null"
Best practice
Constant value should always come first in comparison.
private static final String COMPARE_VALUE = "VALUE123"; public boolean compareIt(String input){ if(COMPARE_VALUE.equals(input)){ return true; }else{ return false; } }
Any Java questions or problems? please post at this JavaNullPointer.com forum, see you there ~