주어진 요소들로 새로운 read-only 셋을 만든다.
fun <T> setOf(vararg elements: T): Set<T>
val set1 = setOf(1, 2, 3)
val set2 = setOf(3, 2, 1)
// setOf preserves the iteration order of elements
println(set1) // [1, 2, 3]
println(set2) // [3, 2, 1]
// but the sets with the same elements are equal no matter of order
println("set1 == set2 is ${set1 == set2}") // true
주어진 elements collection의 모든 요소들을 MutableCollection에 추가한다.
fun <T> MutableCollection<in T>.addAll(
elements: Iterable<T>
): Boolean
fun <T> MutableCollection<in T>.addAll(
elements: Sequence<T>
): Boolean
fun <T> MutableCollection<in T>.addAll(
elements: Array<out T>
): Boolean
val numbers = listOf(3, 4, 5, 6, 7, 8, 9)
val aggregated = numbers.groupingBy { it % 3 }.aggregate { key, accumulator: StringBuilder?, element, first ->
if (first) // first element
StringBuilder().append(key).append(":").append(element)
else
accumulator!!.append("-").append(element)
}
println(aggregated.values) // [0:3-6-9, 1:4-7, 2:5-8]
StringBuilder
를 초기화하고, key
와 element
를 추가한다.accumulator
에 "-"
와 함께 추가한다.컬렉션의 모든 요소를 지정한 구분자(seperator)를 사용하여 하나의 문자열로 결합한다.
val list = listOf(1, 2, 3, 4)
val result = list.joinToString(", ") { "Number: $it" }
println(result) // Number: 1, Number: 2, Number: 3, Number: 4
두 컬렉션을 결합하여 pair로 만든 새로운 컬렉션을 반환한다. 각 페어는 두 컬렉션의 같은 인덱스에 있는 요소들로 구성된다.