I decided to share my story here. Got 95% today and after all these days finally feel myself satisfied.
I won't give the exact preparation time here. My everyday routine load was quite high and unstable so the numbers won't say anything. Let's say I started with Finegan / Liguori guide and passed the in-book
test. The first Enthuware test disappointed me a lot: I got somewhere between 60-70%. That was clearly not the result I was hoping for even taking into consideration the fact that Enthuware tests are harder than actual exam. So I got a little upset, my routine seized me and I left the preparation. When I've sorted out my business I decided to start over (perfectionists' stuff, you know). But then I decided to read Mala Gupta's book after Finegan / Liguori. I also passed Gupta's in-book test.
Speaking about books.
Finegan / Liguori itself is definitely NOT enough. IMO the book is good to give you a general overview of the exam material but no more. The book itself is filled with typos and leaves lots of tricky cases aside.
Mala Gupta's book is much better but not an ideal too. It gives LOTS of those small tricky cases you need to know to feel yourself invincible. The problem is I that I got a feeling that well-known general concepts were explained in a strange way. I can't speak for sure since it wasn't yesterday that I started to learn programming so I wasn't able to perceive these concepts as entirely new ones.
Then I've passed six Enthuware exams. Getting 500 serious questions for $10 makes it not just a great but an awesome deal. You won't regret any single dollar spent on it.
There's just one problem with these questions that is also the biggest advantage: you feel yourself worthless. They'll question you on every single corner case you didn't even know exist. My system was the following. I took the exam and then reviewed every single question. There are great explanations for every question. I strongly advise you to read explanations even to the ones you've answered correctly. You can encounter the situation when the reason for the answer being right won't be the one you think of.
My results were: 86-90-82-86-86-84. Almost every exam was passed in an uncomfortable setting but that's not to justify me. For example, number five was taken on a van's rear seat driving between towns in a terrible road jumping up to the ceiling with my laptop.
My worse-scored topics were Exceptions and Working with Inheritance. I was always worried to make a mistake in loops but almost every time went fine.
I was also writing out all the tricky rules. I've learned the operator precedence table and tried to memorize
String, StringBuilder and ArrayList's methods and constructors.
For example, excerpt from my notes:
"Switch must have a body, even if it's empty.
String's replace() returns the same String object if there is no change.
All compound assignment operators internally do an explicit cast.
java.lang.Number is not final.
With inheritance, the instance variables bind at compile time and the methods bind at runtime."
I decided I was ready and then made an appointment. I think that collateral moments are important so that you wouldn't be distracted. Plan your time so that you wouldn't feel like going to the restroom, hungry or thirsty. Also reserve 15-20 mins if this is your first exam -- they need to take your photo and signature. You'd better ask about paper or erasable board beforehand -- it will substantially help you, especially in loop and lots-of-variables kind of questions although I was prepared not to have any writing tools at all. The testing environment is similar to Enthuware's. You'll get your result by email in 30 minutes.
Good luck! Hope this helps.