Cuál es la diferencia entre for y foreach en Perl?

En el lenguaje de programación Perl tiene palabras clave for y foreach. Se utilizan para crear bucles.

Entre ellos no hay ninguna diferencia. En todas partes, en lugar de for siempre se puede utilizar un foreach y en lugar de foreach siempre se puede utilizar un for.

Pero hay una recomendación. En Perl hay 2 tipos de ciclos que se pueden hacer con la ayuda de for o foreach. La recomendación consiste en que para cada tipo de ciclo de utilizar siempre su la palabra clave. Para el ciclo similar al de un ciclo en python, para utilizar sólo for, y para otros ciclos de utilizar sólo foreach. Si se sigue esta regla simple no se plantea la cuestión cuando lo que hay que utilizar, y leer el código es un poco más fácil.

El ciclo como en python

Después de un lenguaje de programación si este tipo de ciclo en Perl se ve muy familiar.

Después de for entre paréntesis va el 3 fragmento de código:

  • el valor inicial de
  • comprobación de la
  • el cambio
▶ Run
#!/usr/bin/perl

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

Es el mismo código funciona de la misma manera hay lugar for utilizar foreach. Pero hay recomendación para este tipo de ciclo de utilizar siempre sólo for y no utilizar foreach.

Es un ciclo de iteración

El segundo tipo de ciclo que se puede escribir con el uso de for o foreach en Perl es un exceso de elementos en la lista. Este tipo de ciclo es completamente diferente a lo que hay en el lenguaje de programación c.

▶ Run
#!/usr/bin/perl

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

Si escribir for en lugar de foreach, este ciclo va a funcionar de la misma manera. Pero hay recomendación para este el tipo de ciclo de utilizar siempre sólo foreach y no utilizar for.

Postfix ciclo

Una variante del anterior ciclo. Esta opción también funcionará igual que en el caso de for y foreach, pero la recomendación en este caso, utilice sólo foreach.

▶ Run
#!/usr/bin/perl

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

Otros articulos