Функция apply
Функция apply является функцией-расширением в Kotlin,
которая позволяет настроить объект и вернуть его же.
Внутри блока apply объект доступен через this.
Часто используется для инициализации объектов и установки свойств.
Синтаксис
inline fun <T> T.apply(block: T.() -> Unit): T
Пример
Создадим объект StringBuilder и настроим его:
val builder = StringBuilder().apply {
append("Hello")
append(" ")
append("World")
}
println(builder.toString())
Результат выполнения кода:
String "Hello World"
Пример
Инициализация объекта ArrayList с помощью apply:
val list = ArrayList<String>().apply {
add("a")
add("b")
add("c")
}
println(list)
Результат выполнения кода:
ArrayList<String> ['a', 'b', 'c']
Пример
Настройка объекта с несколькими свойствами:
data class Person(var name: String = "", var age: Int = 0)
val person = Person().apply {
name = "John"
age = 30
}
println(person)
Результат выполнения кода:
Person(name=John, age=30)