In mathematical terms, +0.0 and -0.0 are the same, so that's why

Java defines that comparison to return true. As you may know, it

**is** true that +0.0 and -0.0 have different underlying bit representations, but you can't distinguish between them using the == operator.

However, the Double class

**does** distinguish between the two, so this will print false: