buildSet
inline fun <E> buildSet( builderAction: MutableSet<E>.() -> Unit ): Set<E>
Создаёт новый неизменяемый набор (Set) путём заполнения изменяемого набора (MutableSet) с помощью заданного builderAction и возвращает неизменяемый набор с теми же элементами.
Набор, переданный в качестве получателя в builderAction, является допустимым только внутри этой функции. Использование его за пределами функции приводит к неопределённому поведению.
Элементы набора итерируются в том порядке, в котором они были добавлены builderAction.
Возвращаемый набор сериализуем (JVM).
fun main(args: Array<String>) {
//sampleStart
val x = setOf('a', 'b')
val y = buildSet(x.size + 2) {
add('b')
addAll(x)
add('c')
}
println(y) // [b, a, c]
//sampleEnd
}inline fun <E> buildSet( capacity: Int, builderAction: MutableSet<E>.() -> Unit ): Set<E>
Создаёт новый неизменяемый набор (Set) путём заполнения изменяемого набора (MutableSet) с помощью заданного builderAction и возвращает неизменяемый набор с теми же элементами.
Набор, переданный в качестве получателя в builderAction, является допустимым только внутри этой функции. Использование его за пределами функции приводит к неопределённому поведению.
capacity используется для указания ожидаемого количества элементов, добавляемых в builderAction.
Элементы набора итерируются в том порядке, в котором они были добавлены builderAction.
Возвращаемый набор сериализуем (JVM).
fun main(args: Array<String>) {
//sampleStart
val x = setOf('a', 'b')
val y = buildSet(x.size + 2) {
add('b')
addAll(x)
add('c')
}
println(y) // [b, a, c]
//sampleEnd
}Исключения
IllegalArgumentException - если заданный capacity отрицательный.
© 2010–2022 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/build-set.html