foreach
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
foreach [2017/06/27 19:26] – [C#] gg | foreach [2017/06/29 10:47] (current) – [Perl] gg | ||
---|---|---|---|
Line 3: | Line 3: | ||
Die foreach Schleife ist die einfachste aller Schleifen. Sie hat keinen Zähler mehr und funktioniert auf Basis von iterierbaren Datenstrukturen \\ | Die foreach Schleife ist die einfachste aller Schleifen. Sie hat keinen Zähler mehr und funktioniert auf Basis von iterierbaren Datenstrukturen \\ | ||
- | In den folgenden Beispielen wird ein Array angelegt und mit einer foreach Schleife jedes Element des Arrays ausgegeben. | + | In den folgenden Beispielen wird ein Array bzw. ein Vector (mehr dazu unter Datenstrukturen) |
===== Bash ===== | ===== Bash ===== | ||
Line 12: | Line 12: | ||
C++ kann das nur mit Hilfe der Standard Library | C++ kann das nur mit Hilfe der Standard Library | ||
+ | === Das Programm === | ||
<code cpp> | <code cpp> | ||
#include < | #include < | ||
Line 19: | Line 19: | ||
int main() { | int main() { | ||
- | // initialize a vector => it is iterable, a array not | + | // Vector anlegen. Ein Vector ist bei C++ im Vergleich zu einem Array iterierbar |
- | std:: | + | std:: |
- | // declare the function which is called... | + | // Definiere die Funktion die aufgerufen wird... |
auto print = [](const int& n) { std::cout << " " << n; }; | auto print = [](const int& n) { std::cout << " " << n; }; | ||
- | // ...for every element | + | // ...für jedes Element |
- | std:: | + | std:: |
- | // print a new line at the end | + | // eine neue Zeile am Ende ausgeben |
std::cout << " | std::cout << " | ||
} | } | ||
+ | </ | ||
+ | === Kompilieren und ausführen === | ||
+ | Die Datei foreach.cpp mit dem obigen Code erstellen und so zum Laufen bringen: | ||
+ | <code bash> | ||
+ | g++ -Wall -g -std=c++14 foreach.cpp -o foreach # kompilieren | ||
+ | ./ | ||
</ | </ | ||
Line 44: | Line 50: | ||
{ | { | ||
// Anlegen eines Arrays | // Anlegen eines Arrays | ||
- | int[] fibarray = new int[] { 0, 1, 1, 2, 3, 5, 8, 13 }; | + | int[] fibarray = new int[] { 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55 }; |
| | ||
// für jedes Element im Array | // für jedes Element im Array | ||
Line 56: | Line 62: | ||
===== Golang ===== | ===== Golang ===== | ||
- | In go ist so ziemlich alles eine for Schleife. Es kommt darauf an, wie man es hin schreibt. | ||
- | |||
- | <code go> | ||
- | package main | ||
- | |||
- | import ( | ||
- | " | ||
- | ) | ||
- | |||
- | func main() { | ||
- | for i:=1; i<=10; i++ { | ||
- | fmt.Println(" | ||
- | } | ||
- | } | ||
- | </ | ||
+ | Go kennt eigentlich keine foreach Schleife. | ||
===== Java ===== | ===== Java ===== | ||
+ | === Das Programm === | ||
<code java> | <code java> | ||
- | public class ForLoop | + | public class ForEachLoop |
public static void main(String[] args) { | public static void main(String[] args) { | ||
- | | + | |
- | System.out.println("The counter is "+i); | + | |
+ | |||
+ | // für jedes element | ||
+ | for(int u : fibarray) { | ||
+ | // das element ausgeben | ||
+ | System.out.println( | ||
} | } | ||
+ | } | ||
} | } | ||
</ | </ | ||
- | ===== Javascript | + | === Kompilieren und ausführen |
+ | Die Datei ForEachLoop.java mit obigen Inhalt erstellen und so starten | ||
+ | |||
+ | <code bash> | ||
+ | javac ForEachLoop.java # kompilieren | ||
+ | java ForEachLoop | ||
+ | </ | ||
+ | |||
+ | ===== JavaScript ===== | ||
+ | === Das Programm | ||
<code javascript> | <code javascript> | ||
< | < | ||
Line 89: | Line 97: | ||
< | < | ||
< | < | ||
- | | + | |
- | alert(" | + | function alerter(item, index) { |
+ | alert(" | ||
} | } | ||
+ | | ||
+ | // anlegen des Arrays | ||
+ | var fibarray = [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55 ]; | ||
+ | | ||
+ | // für jedes Element des Arrays die oben definierte Funktion ausführen | ||
+ | fibarray.foreach(alerter); | ||
</ | </ | ||
</ | </ | ||
</ | </ | ||
</ | </ | ||
+ | |||
+ | === Ausführen === | ||
+ | Den obigen Code in die Datei foreach.html kopieren und im Browser öffnen. | ||
===== Perl ===== | ===== Perl ===== | ||
+ | === Das Programm === | ||
<code perl> | <code perl> | ||
# | # | ||
Line 104: | Line 123: | ||
use warnings; | use warnings; | ||
- | for ($i = 1; $i <= 10; $i = $i + 1) { | + | # Anlegen des Arrays |
- | print "The counter is $i"; | + | my @fiblist |
+ | my $i = 0; | ||
+ | |||
+ | # Für jedes Element in der Liste eine Ausgabe machen | ||
+ | foreach | ||
+ | | ||
+ | $i = $i + 1; | ||
} | } | ||
+ | </ | ||
+ | === Ausführen === | ||
+ | Das obige Perl Skript in die Datei foreach.pl einfügen und so laufen lassen: | ||
+ | <code bash> | ||
+ | perl foreach.pl | ||
</ | </ | ||
===== PHP ===== | ===== PHP ===== | ||
+ | === Das Programm === | ||
<code php> | <code php> | ||
<?php | <?php | ||
+ | // Anlegen des Arrays | ||
+ | $arr = array(0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55); | ||
+ | $i = 0 | ||
- | for($i = 1; $i <= 10; $i++) { | + | // Für jedes Element dessen Wert ausgeben |
- | echo "The counter is $i"; | + | foreach |
+ | echo "fibonacci number | ||
+ | $i++; | ||
} | } | ||
+ | </ | ||
+ | === Ausführen === | ||
+ | Den obigen Quelltext in die Datei foreach.php einfügen und wie folgt zum Laufen bringen. | ||
+ | <code bash> | ||
+ | php foreach.php | ||
</ | </ | ||
===== Python3 ===== | ===== Python3 ===== | ||
+ | === Das Programm === | ||
+ | <code python> | ||
+ | # | ||
- | Streng genommen ist die for Schleife in Python eine foreach Schleife und wird dadurch hier ausgelassen. | + | # Anlegen des Arrays |
+ | fib = [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55] | ||
+ | i = 0 | ||
+ | # Für jedes Element des Arrays die Ausgabe tätigen | ||
+ | for v in fib: | ||
+ | print(" | ||
+ | i = i + 1 | ||
+ | </ | ||
+ | |||
+ | === Ausführen === | ||
+ | foreach.py mit obigen Inhalt erstellen und so ausführen: | ||
+ | <code bash> | ||
+ | python3 foreach.py | ||
+ | </ |
foreach.1498584397.txt.gz · Last modified: 2017/06/27 19:26 by gg