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;
		}
	}
Tags :
Founder of Mkyong.com, love Java and open source stuff. Follow him on Twitter, or befriend him on Facebook or Google Plus. If you like my tutorials, consider making a donation to the charity, thanks.

Related Posts

Popular Posts