freeCodeCamp/guide/russian/elixir/enumerables/index.md

2.3 KiB
Raw Blame History

title localeTitle
Enumerables перечислимый

Перечисления (Enum)

В объектно-ориентированных языках программирования вы будете использовать «цикл» для повторения одного и того же действия над куском данных в Elixir, поскольку переменные неизменяемы. Невозможно создать трейдационный цикл, вместо этого Elixir и другие языки функционального программирования полагаться на рекурсию. С рекурсией вы будете выполнять одно и то же действие над каждым элементом в списке без необходимости изменять переменную. Библиотека Enum, созданная в Elixir, делает это легко.

пример

Используя Enum.map вы можете запустить анонимную функцию (функцию, которая не находится внутри модуля), проходящую через каждый элемент в списке. Это выполняет ту же задачу, что и трейдационный цикл, без необходимости изменять переменную аккумулятора.

iex> Enum.map([1, 2, 3], fn(x) -> x * 2 end) 
 [2, 4, 6] 

Методы в модуле Enum

Модуль Enum имеет более 70 различных функций для использования в Enumerables, перечисление их всех здесь займет несколько страниц. Вместо этого давайте рассмотрим наиболее часто используемые функции в модуле Enum.

Enum.map

Enum.map запускает анонимную или захваченную функцию над списком.

iex> Enum.map([5, 10, 15, 20], fn(x) -> x * 2 end) 
 [10, 20, 30, 40] 

Дополнительная информация: