for(Iterator<String> i = someList.iterator(); i.hasNext(); ) {
String item = i.next();
System.out.println(item);
}
Note that if you need to use i.remove(); in your loop, or access the actual iterator in some way, you cannot use the for( : ) idiom, since the actual Iterator is merely inferred.
As was noted by Denis Bueno, this code works for any object that implements the Iterable interface.
Also, if the right-hand side of the for(:) idiom is an array rather than an Iterable object, the internal code uses an int index counter and checks against array.length instead. See http://forums.sun.com/thread.jspa?messageID=2743233