Котлин: функция высшего порядка с рекурсией - PullRequest
1 голос
/ 11 декабря 2019

Мне нужно создать функцию более высокого порядка, которая возвращает лямбду для изучения функционального программирования с Kotlin.

Это класс

class Product (val productName : String, val price : Double, val rating : Int) {
    override fun toString () = "$productName, $price, $rating"
}

Это моя функция

fun productFactory (productName: String , rating : Int) : (Double) -> Product {

    val x : (Double) -> Product = productFactory(productName, rating)
    return x
}

это то, как я вызываю функцию

val cheese = productFactory("Gouda", 5)
val product = cheese(4.99)

Хотя кажется, что она работает с необходимыми конструкторами, она вызывает ошибку StackOverflowError, и я не знаю, в чем проблема. Кто-нибудь может мне помочь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...