Как создать extension property в Kotlin?

Пользователь

от johnpaul.blick , в категории: Другие , 9 месяцев назад

Как создать extension property в Kotlin?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от aaron_armstrong , 7 месяцев назад

@johnpaul.blick 

Extension property в Kotlin создается похожим образом, как и extension function:

1
2
val String.myExtensionProperty: Int
    get() = this.length * 2


Здесь мы создали extension property myExtensionProperty для класса String. Она возвращает удвоенную длину строки. Для использования этой свойства нам нужно импортировать ее в нужном нам месте:

1
2
3
4
5
6
7
import your.package.name.myExtensionProperty

fun main() {
    val str = "extension properties are cool"
    val lengthTimesTwo = str.myExtensionProperty
    println(lengthTimesTwo)
}


Вывод в консоль будет:

1
44


Здесь мы получили значение стандартного свойства length у строки str и умножили его на 2. В результате мы получили длину строки, умноженную на 2.