Функция union

Функция union возвращает новую коллекцию, содержащую все уникальные элементы из текущей коллекции и переданной в качестве параметра. Результирующая коллекция является множеством Set и не содержит дубликатов, даже если исходные коллекции их содержали.

Импорт

kotlinimport kotlin.collections.union

Синтаксис

kotlin// Для Iterable, List, Set, Array
infix fun <T> Iterable<T>.union(other: Iterable<T>): Set<T>

Поддерживаемые типы коллекций

Функция union работает со следующими типами коллекций:

Для ассоциативных коллекций Map функция union недоступна напрямую, но можно использовать объединение их ключей или значений через keys или values.

Пример

Объединим два списка типа List:

kotlinval list1 = listOf(1, 2, 3, 4)
val list2 = listOf(3, 4, 5, 6)
val res: Set<Int> = list1.union(list2)
println(res)

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

kotlinSet<Int> [1, 2, 3, 4, 5, 6]

Пример

Объединим два массива типа Array:

kotlinval arr1 = arrayOf('a', 'b', 'c')
val arr2 = arrayOf('c', 'd', 'e')
val res: Set<Char> = arr1.union(arr2)
println(res)

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

kotlinSet<Char> ['a', 'b', 'c', 'd', 'e']

Пример

Объединим два множества типа Set:

kotlinval set1 = setOf("apple", "banana")
val set2 = setOf("banana", "orange")
val res: Set<String> = set1.union(set2)
println(res)

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

kotlinSet<String> ["apple", "banana", "orange"]

Пример

Использование инфиксной формы вызова:

kotlinval numbers1 = listOf(1, 2, 3)
val numbers2 = listOf(3, 4, 5)
val res = numbers1 union numbers2
println(res)

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

kotlinSet<Int> [1, 2, 3, 4, 5]

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

  • функцию intersect,
    которая возвращает пересечение двух коллекций
  • функцию subtract,
    которая возвращает разность двух коллекций
  • функцию distinct,
    которая возвращает коллекцию без дубликатов
  • функцию plus,
    которая объединяет коллекции с сохранением дубликатов