Я начал читать учебник по Котлину.Я остановился на функциональных литералах.Здесь у меня есть код:
val printMessage = { message: String -> println(message) }
printMessage("hello")
printMessage("world")
Затем у меня есть информация, что я могу опустить тип параметра:
{ message -> println(message) }
И теперь у меня есть следующий шаг:
"На самом деле, у Kotlin есть более хитрый трюк. Если есть только один параметр и тип может быть определен, то компилятор позволит нам полностью опустить параметр. В этом случае он делает неявную переменную доступной:
{println(it)}
А теперь после использования этого кода я получаю ошибку «неразрешенная ссылка: это» и «слишком много аргументов для публичного оператора fun invoke (): ???определены в kotlin.Function () ":
val printMessage = {println(it)}
printMessage("print something")
Мой вопрос заключается в том, как использовать неявную переменную в литерале функции одного параметра?