In the following code I have two identical conditional assignment operations, one returns an object of type Double, and the second returns the String \"Integer\".
Well 0.0 is still == to 0
System.out.println(0 == 0.0); // equals true
http://docs.oracle.com/javase/specs/jls/se7/html/jls-15.html#jls-15.25