I have long-time programming experience, but new to Java. Therefore, I use both Thinking in Java and K&B Book for my preparation.
Both are wonderful books.
"Thinking in Java" gives more focus to fundamental things in Java, It is not just a book for SCJP exam. If you are new to Java, should read it before K&B book.
The greatness about K&B book is it is a definite guide to the SCJP 5.0. It put more focus on the ojectives of SCJP exam and those things not included in the exam are also not included in this book. So it is a great book in your final preparation. It also included two great mock exams. They both tended to be a little tougher than the real ones. bot I got 67.8% correct. But in the real one, I got 81%.
1. Keep record of the answers of mock exams you did wrong. And read through them one or two days before the exam. Great help. Most of the mistake I made in the mock exam were not because I can't understand, but just because I overlooked them. Read throught them before the exam will prevent you make the same on in the exam.
2. Not just read the books, code the examples. I think right now the SCJP shifts the focus more to the coding. In my exam, around 8-10 questions ask to select the right code and put in the right spot. The frequency is much higher than in the K&B quiz and mock exam.
3. Flow control is not that easy as I thought. K&B book is right about that. Most people get lowest score in flow control. I am not an exception. ^_^ Just be careful with flow control tricky questions.