Not to be immodest, but so far as we know, there are no books like this on the market, about any programming language. There are puzzle books (e.g., The C Puzzle Book by Alan R. Feuer) and there are traps-and-pitfalls books (e.g., C Traps and Pitfalls by Andrew Koenig). But we don't know of any book on any language that methodically use puzzles to expose the traps and pitfalls. In fact, we don't know of any Java puzzle books, or any books that methodically expose the traps and pitfalls of the core Java platform. (There is Tate's "Bitter Java," but I believe it has a very different focus.)