Long ago I worked with C compilers that were too stupid to remove the boolean test for "while (1)".  So unending loops were written as "for (;;)" to work around it.  The Java compiler is obviously not that stupid, and neither are any modern C compilers, but habit is habit.

Our coding standard at this point is more-or-less "loop with no conditional" is spelled as "for (;;)" because most of them have been written by me.