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 stuffs. Follow him on Twitter, or befriend him on Facebook or Google Plus.
Here are some of my recommended Books

Related Posts

Popular Posts