I would ditto that
Java in a Nutshell, now in its 5th Edition (ISBN-13: 978-0-596-00773-7), and its companion
Java Examples in a Nutshell are excellent. Unfortunately the Examples book has not been updated in a while and only covers Java 1.4. Part II of the
Java in a Nutshell book is a nice API Reference that can add to what can be found in the
Java API. In general, I personally find the Nutshell book more of a reference than a tutorial or introduction book.
Another recommendation would be
Core Java�, Volume I�Fundamentals, Eighth Edition (ISBN-10: 0-13-235476-4) and
Core Java� Volume II�Advanced Features, Eighth Edition (ISBN-10: 0-13-235479-9) by Cay S. Horstmann and Gary Cornell. I generally don't recommend those books to people brand new to programming as they do gloss over some of the more basic programming concepts. But for people who have programmed previously in other languages (especially C/C++), or as a second or third book for new programmers, they are very good. In fact, for previous c/C++ programmers, they are excellent as they have side notes about Java/C++ differences.