Kotlin в IntelliJ IDEA Kotlin змінні Kotlin типи даних Kotlin операції з числами Kotlin умовні вирази Kotlin умовні конструкції Kotlin цикли Kotlin послідовності Kotlin масиви Kotlin функціональне програмування Kotlin змінна кількість параметрів. Vararg Kotlin повернення результату. оператор return Kotlin однорядкові і локальні функції Kotlin перевантаження функцій Kotlin Лямбда-вирази Kotlin функції вищого порядку Kotlin Анонімні функції Kotlin ООП Класи і об'єкти Kotlin ООП властивості Kotlin ООП конструктор Kotlin ООП функції в класах Kotlin ООП Пакети та імпорт Kotlin ООП модифікатори видимості Kotlin ООП вкладені класи Kotlin ООП інтерфейси Kotlin ООП спадкування Kotlin ООП Перевизначення методів і властивостей Kotlin ООП Абстрактні класи та методи Kotlin ООП Data-класи Kotlin ООП перерахування enums Kotlin ООП Null і nullable-типи Kotlin ООП Обробка винятків Kotlin ООП перетворення типів Kotlin ООП Інфіксна функція Kotlin ООП функції розширення Kotlin ООП Узагальнені класи і функції Kotlin ООП обмеження узагальнень Kotlin ООП Варіантність, коваріантність і контраваріантність Kotlin Колекції. Змінювані і незмінні колекції Kotlin Колекції. LIST список Kotlin Колекції. Set Kotlin Колекції. Map

Kotlin Колекції. Змінювані і незмінні колекції


колекції


Змінювані і незмінні колекції

Колекції представляють контейнери, які використовуються для зберігання даних. Залежно від типу колекції розрізняються способи роботи з даними.

Kotlin не має власної бібліотеки колекцій і повністю покладається на класи колекцій, які надає Java. У той же час ці колекції в Kotlin розширюються додатковими можливостями.

Так, в Kotlin колекції поділяються на змінювані (mutable) і незмінні (immutable) колекції.

Mutable-колекція може змінюватися, в неї можна додавати, в ній можна змінювати, видаляти елементи. Immutable-колекція також підтримує додавання, заміну і видалення даних, проте в процесі подібних операцій колекція буде заново пересоздавал.

Всі колекції в Kotlin розташовуються в пакеті kotlin.collections . Повний список інтерфейсів і класів, які представляють колекції, можна знайти тут .

Колекції в Kotlin


незмінні колекції

На вершині ієрархії знаходиться інтерфейс Iterable , який визначає функцію итератор для перебору колекції.

Основним інтерфейсом, який дозволяє працювати з колекціями, є kotlin.Collection . Даний інтерфейс визначає функціональність для перебору елементів, перевірки наявності елементів, читання даних. Однак він не надає можливості по додаванню і видалення даних. Його основні компоненти:

  • 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 - змінна карта, де кожен елемент являє пару ключ-значення.


Наш партнер:
beta test mp3 playlist downloader