I thought Java had short circuit evaluation, yet this line is still throwing a null pointer exception:
if( (perfectAgent != null) && (perfectAgent.getAddress().equals(entry.getKey())) ) {
In this case perfectAgent
is null
, so I just want the whole expression to return false
, but my app is still crashing on this line with a NullPointerException.
EDIT, general response:
Since perfectAgent
is null
, nothing to the right of the &&
should be executed, as it is impossible for the expression to be true. More to the point, it is impossible to execute perfectAgent.getAddress()
since perfectAgent
does not contain a valid reference (it being null and all). I'm trying to use short circuit evaluation to not have to check for null in a seperate statement as that makes the logic more sloppy.
EDIT 2 (or, I'm an idiot): Yeah, like many things in life you figure out the answer right after announcing to the world that you're a moron. In this case, I had turned off Eclipse's autobuild while doing something else and not turned it back on, so I was debugging class files that didn't match up with my source.