Iterator <Integer> visitor = primes.iterator() ;
for
-Schleife
import java.util.* ;
public class IteratorExampleTwo
{
public static void main(String[] args)
{
ArrayList<String> names = new ArrayList<>();
names.add( "Amy" ); names.add( "Bob" );
names.add( "Chris" ); names.add( "Deb" );
names.add( "Elaine" ); names.add( "Frank" );
names.add( "Gail" ); names.add( "Hal" );
for ( String nm : names )
System.out.println( nm );
}
}
Die verbesserte for
-Schleife (manchmal auch als "for each"-Schleife bezeichnet) kann mit jeder Klasse verwendet werden, die die Iterable
-Schnittstelle implementiert, beispielsweise ArrayList
. Hier ist das vorherige Programm, das nun mit einer verbesserten for
-Schleife geschrieben wurde.
Das Programm macht das Gleiche wie das vorherige Programm. Die erweiterte for
-Schleife greift auf die Stringreferenzen in names
zu und weist sie der Reihe nach nm
zu. Mit einer erweiterten for
-Schleife besteht keine Gefahr, dass ein Index außerhalb des Bereichs liegt. (In der obigen Zeile trennt ein Doppelpunkt : nm
und names
. Dies könnte in manchen Browsern möglicherweise schwer zu erkennen sein.)
Die erweiterte for
-Schleife besucht nur die Zellen, die nicht leer sind, beginnend mit Zelle Null. Da eine ArrayList
niemals Lücken zwischen den Zellen hat, werden alle belegten Zellen besucht.
(Rückblick: ) Können primitive Typen wie int
und double
zu einer ArrayList
hinzugefügt werden?