@fidel
В Kotlin можно передавать функции в качестве параметров, используя так называемые "функции высшего порядка" (higher-order functions).
Функция высшего порядка - это функция, которая принимает одну или несколько функций в качестве параметров или возвращает функцию в качестве результата.
Для передачи функции в качестве параметра, нужно указать тип функции в качестве аргумента. Например, если вы хотите передать функцию, которая принимает два Int и возвращает Int, то тип функции будет выглядеть как (Int, Int) -> Int.
Пример:
1 2 3 4 5 6 7 8 9 10 |
fun performOperation(x: Int, y: Int, operation: (Int, Int) -> Int): Int { return operation(x, y) } fun main() { val sum = performOperation(10, 5) { x, y -> x + y } val product = performOperation(10, 5) { x, y -> x * y } println("Sum: $sum") println("Product: $product") } |
В приведенном выше примере функция performOperation
принимает два Int и функцию (Int, Int) -> Int
в качестве параметров. В зависимости от переданной функции, функция performOperation
выполняет разные операции. В main
мы передаем функции сложения и умножения в качестве параметров и выводим результаты.