Eclipse, even though its free and has great features, is not the best thing for first time Java programmers so I wouldn't recommend it.
BlueJ (which is made in) is a good beginner one, with lots of features to that are nice for beginners like showing UML diagrams and creating the documentation, though I find it can also be confusing sometimes at least in the beginning.
With Xcode, you can just open a file and start typing, but it can be lacking since you can't compile unless your files is part of a target in a project, though you can easily get around it by opening up a Terminal (Applications > Utilities > Terminal) and using the javac command to compile and java command to run.
My recommendation: If you can spend a little time and a little energy to figure out all the features, then go with BlueJ. Else if want to just sit down and type up a quick program with no real need for lots of extra features, you can just open up Xcode, open a New File and start typing, and just keep a Terminal open on the side for compiling and running.
Myself? I have all 3 on my machine.