Qual è la differenza tra for e foreach in Perl?

Nel linguaggio di programmazione Perl ci sono le parole chiave for e foreach. Essi sono utilizzati per eseguire cicli.

Tra di loro non c'è alcuna differenza. Ovunque invece for è sempre possibile utilizzare foreach e invece foreach è sempre possibile utilizzare for.

Ma c'è raccomandazione. In Perl ci sono 2 tipi di cicli che si possono fare con l'aiuto di for o foreach. Raccomandazione consiste nel fatto che per ogni tipo di ciclo di utilizzare sempre la sua la parola chiave. Per il ciclo di simile a un ciclo in lingua Xi utilizzare solo for, e per gli altri cicli di utilizzare solo foreach. Se seguire questa semplice regola allora non si pone il problema che quando utilizzare e leggere il codice diventa solo un po ' più facile.

Il ciclo come nel linguaggio c

Dopo il linguaggio di programmazione c questo tipo di ciclo in Perl sembra molto familiare.

Dopo for tra parentesi va 3 frammento di codice:

  • il valore iniziale
  • verifica
  • il cambiamento
▶ Run
#!/usr/bin/perl

for (my $i=0; $i < 3; $i++) {
    warn $i;
}

Questo è lo stesso codice funziona allo stesso modo, ci sono invece for utilizzare foreach. Ma c'è raccomandazione per questo tipo di ciclo di utilizzare sempre solo for e di non utilizzare foreach.

Ciclo — busto elementi

Il secondo tipo di ciclo che può essere scritto utilizzando for o foreach in Perl — è eccessivo di elementi nella lista. Questo tipo di ciclo non è assolutamente simile a quello che c'è nel linguaggio di programmazione c.

▶ Run
#!/usr/bin/perl

foreach my $el (1, 2, 3) {
    warn $el;
}

Se scrivere for invece foreach, questo ciclo funzionerà allo stesso modo. Ma c'è raccomandazione per questo tipo di ciclo di utilizzare sempre solo foreach e di non utilizzare for.

Постфиксный ciclo

Tipo di ciclo precedente. Questa opzione sarà anche funzionare ugualmente e in caso di for e foreach, ma la raccomandazione in questo caso, utilizzare solo foreach.

▶ Run
#!/usr/bin/perl

warn $_ foreach (1, 2, 3);

Altri articoli