ein Kapitel zurück                                           ein Kapitel weiter

Die foreach-Schleife wird für viele wieder Neuland darstellen. Aber im Prinzip ist diese Schleife eine Abart der for-Schleife. Hierzu erst der Syntax.........


foreach $var LISTE
 {
   ANWEISUNG
 }


Mit foreach werden nacheinander alle Elemente der Liste durchlaufen. Wozu? Nun nehmen wir mal an sie wollen von 1-10 mit ungeraden Zahlen rechnen. Dies würden sie nach dem jetzigen Wissensstand so machen....


#!/usr/bin/perl -w

for($wert=1; $wert<=10; $wert++)
 {
   if($wert % 2) #gerade Zahl = 0, ungerade Zahl = 1
     {
       print $wert*$wert . "\n";
     }
 }


Wir berechnen hier die Quadratfläche zu allen ungeraden Zahlen von 1-10. Mit foreach könnten das jetzt so aussehen............... 


#!/usr/bin/perl -w

foreach $wert (1..10)
 {
   if($wert % 2) #gerade Zahl = 0, ungerade Zahl = 1
     {
       print $wert*$wert . "\n";
     }
 }


Auch in diesem Beispiel wir der Wert 1-10 durchlaufen. Die Initialisierung von $wert  übernimmt in diesesem Fall die Schleife für uns. Einen echten Vorteil haben wir aber jetzt davon nicht. Die Schleife wird dennoch 10 mal Durchlaufen, dabei 5 mal Umsonst da die Zahl gerade ist. Man kann die foreach-Schleife ja auch anderes  verwenden................


#!/usr/bin/perl -w

foreach $wert (1, 3, 5, 7, 9)
 {
   if($wert % 2) #gerade Zahl = 0, ungerade Zahl = 1
     {
       print $wert*$wert . "\n";
     }
 }


Jetzt wir die Schleife tatsächlich nur 5 mal ausgeführt. Natürlich sind mit foreach auch andere Schreibweisen möglich...............


foreach $farbe ('rot', 'blau', 'gruen')
foreach $alpha ('a'..'z')
#Es wird das ganze Alphabet in Kleinbuchstaben durchlaufen


Manch einem der bereits Erfahrung in C/C++ hat wird dabei eine Ähnlichkeit in Arrays  sehen. Und er hat Recht es lässt sich sehr gut dabei Verwenden. Dazu kommen wir noch.

ein Kapitel zurück          nach oben           ein Kapitel weiter


© 2001,2002 Jürgen Wolf