Каково различие между 'для' и 'foreach' в Perl?

Я вижу их используемые попеременно.Какая разница?

31
задан Guillaume Vauvert 23 February 2012 в 20:09
поделиться

5 ответов

Нет никакой разницы. Из perldoc perlsyn :

Ключевое слово foreach на самом деле является синонимом ключевого слова for , поэтому вы можете использовать foreach для удобства чтения или для для краткости.

39
ответ дан 27 November 2019 в 22:07
поделиться

Я вижу, что они используются как взаимозаменяемые.

Нет никакой разницы, кроме синтаксиса.

15
ответ дан 27 November 2019 в 22:07
поделиться

С момента своего появления в perl-2.0, foreach стал синонимом for. Это кивок в сторону команды foreach в оболочке C.

В моем собственном коде, в редких случаях, когда я использую цикл for в стиле C, я пишу

for (my $i = 0; $i < $n; ++$i)

а для итерации по массиву пишу

foreach my $x (@a)

Я нахожу, что так он лучше читается в моей голове.

4
ответ дан 27 November 2019 в 22:07
поделиться

Четыре буквы.

Они функционально идентичны, просто пишутся по-разному.

6
ответ дан 27 November 2019 в 22:07
поделиться

В случае «для» вы можете использовать три шага.

1) Инициализация 2) Проверка условий 3) Увеличение или уменьшение

Но в случае «foreach» вы не можете увеличивать или уменьшать значение. Значение приращения всегда равно 1.

-3
ответ дан 27 November 2019 в 22:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: