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

42 lines
1.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
title: Lists
localeTitle: Списки
---
## Списки
В Elixir перечислены структуры данных, состоящие из значений в квадратных скобках. Значения в списке могут быть любого типа.
```elixir
iex> [1, "string", true]
[1, "string", true]
```
## неизменность
Структуры данных в Elixir являются неизменяемыми, поэтому любые операции, выполняемые в List, возвращают новый список, оставляя исходное неповрежденным.
```elixir
iex> list = [1, "string", true]
[1, "string", true]
iex> list ++ [2]
[1, "string", true, 2]
iex> list
[1, "string", true]
```
## Головы и хвосты
Головку (первый элемент) списка и хвост (оставшиеся значения) можно легко получить с помощью операторов `hd/1` и `tl/1` .
```elixir
iex> list = [1, "string", true]
iex> hd(list)
1
iex> tl(list)
["string", true]
```
#### Дополнительная информация:
* [elixir-lang.org | рекурсия](https://elixir-lang.org/getting-started/basic-types.html#linked-lists)
* [hexdocs | Enum](https://hexdocs.pm/elixir/List.html)