Найти тему
KOTLIN_IT

Урок №48 по Котлин. Изменяемые и неизменяемые коллекции

Оглавление

Неизменяемые коллекции

Его основные компоненты:

  • size: возвращает количество элементов в коллекции
  • isEmpty(): возвращает true, если коллекция пустая
  • contains(element): возвращает true, если коллекция содержит element
  • containsAll(collection): возвращает true, если коллекция содержит элементы коллекции collection

Этот интерфейс расширяется другими интерфейсами, которые представляют неизменяемые коллекции - List, который представляет обычный список, и Set, который представляет неупорядоченную коллекцию элементов, не допускающую дублирования элементов.

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

Изменяемые коллекции

Все изменяемые коллекции реализуют интерфейс MutableIterable. Он представляет функцию итератора для перебора коллекции.

Для изменения данных в Kotlin также определен интерфейс kotlin.MutableCollection, который расширяет интерфейс kotlin.Collection и предоставляет методы для удаления и добавления элементов.

В частности:

  • add(element): добавляет элемент
  • remove(element): удаляет элемент
  • addAll(elements): добавляет набор элементов
  • removeAll(elements): удаляет набор элементов
  • clear(): удаляет все элементы из коллекции

Этот интерфейс расширяется интерфейсами MutableList, который представляет изменяемый список, и MutableSet, который предствляет изменяемую неупорядоченную коллекцию уникальных элементов.

И еще одна изменяемая коллекция представлена интерфейсом MutableMap - изменяемая карта, где каждый элемент представляет пару ключ-значение.