Интерфейс MutableCollection

Интерфейс MutableCollection представляет собой изменяемую коллекцию элементов. Он наследуется от интерфейса Collection и добавляет методы для модификации коллекции: добавления, удаления и очистки элементов. В первый параметр методов добавления и удаления передается элемент для операции, а методы возвращают Boolean - результат операции.

Импорт

kotlinimport kotlin.collections.MutableCollection

Синтаксис

kotlininterface MutableCollection<E> : Collection<E>, MutableIterable<E>

Основные методы

kotlinfun add(element: E): Boolean
fun addAll(elements: Collection<E>): Boolean
fun remove(element: E): Boolean
fun removeAll(elements: Collection<E>): Boolean
fun retainAll(elements: Collection<E>): Boolean
fun clear(): Unit

Пример

Создадим изменяемую коллекцию и добавим в нее элементы:

kotlinval mutableCollection: MutableCollection<String> = mutableListOf()
val res1: Boolean = mutableCollection.add("a")
val res2: Boolean = mutableCollection.addAll(listOf("b", "c", "d"))

println(mutableCollection)
println("First add result: $res1")
println("Second add result: $res2")

Результат выполнения кода:

kotlinMutableCollection<String> ['a', 'b', 'c', 'd']
Boolean true
Boolean true

Пример

Удалим элементы из изменяемой коллекции:

kotlinval mutableCollection: MutableCollection<Int> = mutableListOf(1, 2, 3, 4, 5)
val res1: Boolean = mutableCollection.remove(3)
val res2: Boolean = mutableCollection.removeAll(listOf(1, 5))

println(mutableCollection)
println("First remove result: $res1")
println("Second remove result: $res2")

Результат выполнения кода:

kotlinMutableCollection<Int> [2, 4]
Boolean true
Boolean true

Пример

Используем метод retainAll для сохранения только определенных элементов:

kotlinval mutableCollection: MutableCollection<Char> = mutableListOf('a', 'b', 'c', 'd', 'e')
val res: Boolean = mutableCollection.retainAll(listOf('c', 'd', 'f'))

println(mutableCollection)
println("Retain result: $res")

Результат выполнения кода:

kotlinMutableCollection<Char> ['c', 'd']
Boolean true

Пример

Очистим изменяемую коллекцию с помощью метода clear:

kotlinval mutableCollection: MutableCollection<String> = mutableListOf("a", "b", "c")
println("Before clear: $mutableCollection")

mutableCollection.clear()
println("After clear: $mutableCollection")

Результат выполнения кода:

kotlinMutableCollection<String> ['a', 'b', 'c']
MutableCollection<String> []

Смотрите также

  • интерфейс Collection,
    который представляет базовую неизменяемую коллекцию
  • интерфейс MutableList,
    который представляет изменяемый список с доступом по индексу
  • интерфейс MutableSet,
    который представляет изменяемое множество уникальных элементов
  • класс ArrayList,
    который является реализацией изменяемого списка на основе массива