The Core Java books are Ok if you're coming from a C++ or VB background, as the authors make many references to those languages in an attempt to remove confusion between them. For someone like myself, who came from a non-OOP background, I wasted a lot of time trying to learn from these books. It was a major mistep for me when I was trying to get started.
I truly wish that I had started out with either The Programmers Guide to Java Certification, or the Java 2 - Complete Reference. These two really dive into the fundamentals and are the best of the lot. The Complete Reference is probably the most thorough in terms of code examples. BTW, neither of these books spend much time on advanced topics, so
you should look elsewhere for that.