This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
The == operator here tests whether "" and email point are in the same memory location. Even if the variable email did in fact contain an empty string, the == doesn't know that's what you mean. The equals() method in the String class is a test for what's in the String, rather than where the thing is located.
Make visible what, without you, might perhaps never have been seen. - Robert Bresson