Функция buildSet
Функция buildSet создает новое неизменяемое множество
типа Set. Внутри блока инициализации можно использовать
методы mutable множества для добавления элементов. Функция
возвращает готовое неизменяемое множество.
Импорт
import kotlin.collections.buildSet
Синтаксис
inline fun <T> buildSet(
builderAction: MutableSet<T>.() -> Unit
): Set<T>
Пример
Создадим множество чисел с помощью функции buildSet:
val numbers: Set<Int> = buildSet {
add(1)
add(2)
add(3)
addAll(listOf(4, 5))
}
println(numbers)
Результат выполнения кода:
Set<Int> [1, 2, 3, 4, 5]
Пример
Создадим множество символов с проверкой условий:
val chars: Set<Char> = buildSet {
add('a')
add('b')
if (true) {
add('c')
}
for (i in 1..2) {
add(('d'.code + i).toChar())
}
}
println(chars)
Результат выполнения кода:
Set<Char> ['a', 'b', 'c', 'e', 'f']
Пример
Удаление дубликатов из списка с помощью buildSet:
val listWithDuplicates = listOf(1, 2, 2, 3, 4, 4, 5)
val uniqueNumbers: Set<Int> = buildSet {
addAll(listWithDuplicates)
}
println(uniqueNumbers)
Результат выполнения кода:
Set<Int> [1, 2, 3, 4, 5]
Пример
Использование различных методов MutableSet внутри блока:
val resultSet: Set<String> = buildSet {
add("first")
add("second")
remove("first")
add("third")
addAll(setOf("fourth", "fifth"))
}
println(resultSet)
Результат выполнения кода:
Set<String> ["second", "third", "fourth", "fifth"]
Смотрите также
-
функцию
setOf,
которая создает неизменяемое множество из переданных элементов -
функцию
mutableSetOf,
которая создает изменяемое множество -
функцию
hashSetOf,
которая создает HashSet из переданных элементов -
функцию
buildList,
которая создает неизменяемый список с помощью builder-блока