Dear lord, here we go. It would be really cool if this post could just be the end of it. An IDE, or lack of one, is a personal choices (unless work forces one on you) and most users are quite passionate about the one that is their favorite. And everyone posting here (except Bear) is giving you their opinion. The best thing to do is take the following advice.
1. If you are just learning how to develop the best thing to do is to use the command line and a generic editor like Notepad++ for windows or something like gedit/kate for Linux or TextEdit/TextMate for Mac. You could also choose VI or Emacs (another passionate discussion). The point is the less handholding by an IDE the better. This gives you the experience you need to understand what is going on when you compile code, adjust your classpath, handle stacktraces, etc. Using a IDE will shield you from some of this and I promise, it will come back to haunt you.
2. Once you are comfortable on the command line with a simple editor the following free options are available to you. This is by no means an exhaustive list...
a) Eclipse - Probably the most widely used free IDE. It's fairly light weight as far as IDE's go because you need plugins to do anything beyond basic java development. It does have excellent plugin support. This is also probably the most widely used IDE in the work market.
b) Netbeans - Probably the second most widely used free IDE. It's not as lightweight as Eclipse but does a good job. There are multiple downloads available depending on how much you need it to do.
c) JDeveloper - throwing this in for good measure. I really haven't read much on it lately so I have no idea how good it is. Considering the lack of questions here at the ranch on it I can assume 1 of 2 things. 1) It is so good no one ever asks questions about it or 2) it just isn't used that much.
d) JEdit - This starts out as a simple editor but after installing a few plugins can be nearly as good as the above mentioned IDE's. Just takes some getting used to and there is quite a bit of setup involved to get all the plugins you need.
Although there are more, this is more than enough info to get you started. What you need to do is follow my advice for #1 and then download and try each IDE. Then pick the one that you feel most comfortable with. This will probably be the most unbiased post you will see in this
thread because I am not telling you which one to use.