Учебники

Scala — Коллекции

Scala имеет богатый набор коллекционных библиотек. Коллекции являются контейнерами вещей. Эти контейнеры могут быть последовательными, линейными наборами элементов, такими как List, Tuple, Option, Map и т. Д. Коллекции могут иметь произвольное количество элементов или быть ограничены нулем или одним элементом (например, Option).

Коллекции могут быть строгими или ленивыми . Ленивые коллекции имеют элементы, которые могут не потреблять память до тех пор, пока к ним не будет получен доступ, например, диапазоны . Кроме того, коллекции могут быть изменяемыми (содержимое ссылки может изменяться) или неизменными (вещь, на которую ссылается ссылка, никогда не изменяется). Обратите внимание, что неизменяемые коллекции могут содержать изменяемые элементы.

Для некоторых задач изменяемые коллекции работают лучше, а для других неизменные коллекции работают лучше. В случае сомнений лучше начать с неизменяемой коллекции и изменить ее позже, если вам нужны изменяемые.

Эта глава проливает свет на наиболее часто используемые типы коллекций и наиболее часто используемые операции над этими коллекциями.

Scala Lists

Scala’s List [T] — это связанный список типа T.

Наборы Скала

Набор представляет собой набор попарно различных элементов одного типа.

Scala Maps

Карта — это набор пар ключ / значение. Любое значение может быть получено на основе его ключа.

Скала Кортежи

В отличие от массива или списка, кортеж может содержать объекты разных типов.

Опции Scala

Опция [T] предоставляет контейнер для нуля или одного элемента данного типа.

Scala Iterators

Итератор — это не коллекция, а способ доступа к элементам коллекции один за другим.