This thread really belongs in the JavaRanch forum, not here. However, this question has also been asked and answered many times, as Jeanne pointed out. So, I'm just going to close it and leave it here.
There are only two hard things in computer science: cache invalidation, naming things, and off-by-one errors
Enjoy the full beauty of the english language. Embedded in this tiny ad:
a bit of art, as a gift, the permaculture playing cards