There is a book review section of this web site, you might want to check it out. As far as beginner books, the two that I generally recommend are Ivor Horton's Beginning Java or Peter Van Der Linden's Just Java 2. Ivor's book was kind of the old standard (I used the JDK 1.1 edition of the book extensively), whereas Peter's book seems to be the hot book now. I don't think you can go wrong with either of them.
<B>Rich Wardwell</B><BR> <A HREF="mailto:email@example.com" rel="nofollow">firstname.lastname@example.org</A> <BR>Sun Certified Programmer for the Java 2 Platform
My recommendation is the same as the author of Just Java 2: If you know C (or C++) already, that book is best. And I concur with the opinion about Ivor Horton's book. This last one is better for non-C programmers, IMO. And there is a Java 2 version out. In BOTH cases, be sure to download the errata from the Web.
Tony Alicea Senior Java Web Application Developer, SCPJ2, SCWCD
I would suggest Head First Java as anyone's first steps into the magical world of Java. It is a relatively quick book which will give you a solid base on which you can expand in any direction you want. I think, more than any other starting Java book, it makes you love what you are learning. Or I suppose Kathy Sierra would say it creates a "passion" for Java.
Whichever way you choose to start, always feel free to come back to the Ranch for help!