¿Cuál es la syntax de Enhanced for loop en Java?

Se me ha pedido que use Enhanced for loop en mi encoding. Solo me han enseñado cómo usar los bucles for tradicionales, y como tal, no sé sobre las diferencias entre él y el bucle for mejorado. ¿Cómo se diferencia un bucle for mejorado de un bucle for tradicional en Java? ¿Hay alguna complicación que debería tener en cuenta y que los tutoriales tienden a no mencionar?

Mejorado para bucle:

 for (String element : array) { // Do something with element of type String System.out.println(element); } 

Tradicional para bucle: (

 for (int i=0; i < array.length; i++) { // Reference to the item in array[position] String element = array[i]; // More code using String element } 

Eche un vistazo a estos foros: https://blogs.oracle.com/CoreJavaTechTips/entry/using_enhanced_for_loops_with

http://www.java-tips.org/java-se-tips/java.lang/the-enhanced-for-loop.html

Un bucle for mejorado solo limita el número de parámetros dentro del paréntesis.

 for (int i = 0; i < myArray.length; i++) { System.out.println(myArray[i]); } 

Se puede escribir como:

 for (int myValue : myArray) { System.out.println(myValue); }