personally, i think Sun's announcement is less about choice and more about fear of losing market share. with this announcement, developers who already code with Java are less likely to spend the time learning the iPhone SDK.
the iPhone SDK is a developers platform, just like Java. they compete. if every developer were to become comfortable with the iPhone SDK, there would be no need for Java in what is sure to become a huge market. Sun knows this, so they're doing whatever they can to keep developers from using the iPhone SDK now. and with no release date set for an iPhone version of Java, Sun could just keep pushing it off, continuing to keep developers away from the native SDK by saying it's coming soon. in reality, this announcement may lead to less apps on the iPhone, not more.
and let's just be honest, while Java is very capable and has a place in the developer world, native apps are always better. let's stick to better apps for the iPhone.