File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Beginning Java and the fly likes Switching order for equals operator Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of OCM Java EE 6 Enterprise Architect Exam Guide this week in the OCMJEA forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Switching order for equals operator" Watch "Switching order for equals operator" New topic
Author

Switching order for equals operator

Brian Schotky
Greenhorn

Joined: Dec 07, 2009
Posts: 1
Hi all,

I've seen in several places that a way to avoid null pointer exceptions is to switch the order of the equals operator. For example, using



Instead of:



Although this seems like a good idea, doesn't this make it harder to debug down the line if you run into problems? Isn't is basically hiding the fact that you have a NPE where you shouldn't?

Just curious what your thoughts were.

Thanks!
Rob Spoor
Sheriff

Joined: Oct 27, 2005
Posts: 19684
    
  20

In my opinion, you should only write this code if otherwise you would have written In other words, if you already intended to have the null check in place.


SCJP 1.4 - SCJP 6 - SCWCD 5 - OCEEJBD 6
How To Ask Questions How To Answer Questions
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 38513
    
  23
If there is any chance of "dog" being null, then dog.equals("Fido") will throw an Exception and "Fido".equals(dog) will not throw an Exception.
Patricia Samuel
Ranch Hand

Joined: Sep 12, 2007
Posts: 300
General Practice is this only that Rob has suggested.

 
It is sorta covered in the JavaRanch Style Guide.
 
subject: Switching order for equals operator