Что значит двойное двоеточие (::) в kotlin?

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

от sylvester , в категории: Другие , 8 месяцев назад

Что значит двойное двоеточие (::) в kotlin?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

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

от francisco.friesen , 8 месяцев назад

@sylvester 

Двойное двоеточие (::) в Kotlin является синтаксическим конструктором для ссылок на функции или функциональные объекты. Он позволяет указать, что функция или объект должны быть использованы в качестве аргумента для другой функции. Например:

1
2
3
4
5
6
7
fun main(args: Array<String>) {
    val numbers = listOf(1, 2, 3, 4, 5)
    val evenNumbers = numbers.filter(::isEven)
    println(evenNumbers)
}

fun isEven(number: Int) = number % 2 == 0


В этом примере функция filter принимает в качестве аргумента другую функцию, которая используется для фильтрации элементов списка. Ссылка на функцию isEven передается с помощью двойного двоеточия ::isEven.