Schleifen sind im Prinzip syntaktischer Zucker. Man kann das gleiche auch mit jumps erreichen. Welche von den Schleifen in Java sich für welche Fälle eignet, lässt sich auch nicht einfach so sagen. Es kommt unter anderem auch auf den Geschmack vom Programmierer an.

Beispielsweise ist hier beides das Gleiche:

for(int i = 0;;i++){
  // Hier der Code...
}
int i = 0;
while(true){
  // Hier der Code...
  i++;
}
// Ausnahme: hier kann auf i zugegriffen werden
...zur Antwort