Whichever book I recommend is going to be good for me not necessarily you.
At least do some of your own research first -
see this[
^]
A good guide is to look at the reviews of books on something like Amazon - the more stars it gets the better.
Or look at the related questions to the right of this page or even better on this QA post -
Best Book/Resources To Learn Java?[
^]