Назад к вопросам
Junior
117
questionbank
Каково назначение функции 'apply' в Kotlin?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Функция apply относится к стандартным scoped functions в Kotlin.
Назначение:
- Выполняет блок кода на вызывающем объекте.
- Возвращает сам объект после применения блока.
- Внутри блока объект доступен как
this.
Используется для:
- Конфигурации и инициализации объектов, особенно тех, у которых много свойств для установки.
- Повышения читаемости кода, позволяя цепочечно вызывать методы или устанавливать свойства на одном объекте.
Пример:
// Создаем объект и настраиваем его с помощью apply
val textView = TextView(context).apply {
text = "Hello, world!"
textSize = 16f
setTextColor(Color.BLACK)
setPadding(10, 10, 10, 10)
}
// textView теперь настроенный экземпляр TextView
Ключевое отличие от let, run, with:
| Функция | Receiver в блоке | Возвращаемое значение |
|---|---|---|
apply |
this (объект) |
Объект |
let |
it (объект) |
Результат последнего выражения в блоке |
run (as extension) |
this (объект) |
Результат последнего выражения в блоке |
with |
this (объект) |
Результат последнего выражения в блоке |