[Из песочницы] Неявные (implicit) параметры и преобразования в Scala
|
|
Суббота, 11 Мая 2019 г. 20:20
+ в цитатник
Пробежавшись по предыдущим статьям на Хабре,
тыц и
тыц так и не удалось в быстром режиме понять, что делает неявность (implicit) в Scala. Попробуем разобраться вместе.
Итак, implicit в Scala позволяют избежать вызывания методов или явных ссылок на переменные, и взамен этого позволяют компилятору самому найти нужные неявные данные.
Например, мы могли бы написать функцию для преобразования из Float в Int(FloatToInt) и, вместо того, чтобы вызвать эту функцию явно, компилятор бы сделал это вместо нас неявно:
def double(value: Int) = value * 2
implicit def FloatToInt(value: Float):Int = value.toInt
println(double(2.5F))
Запутанно? Давайте обо всём по порядку.
Читать дальше → https://habr.com/ru/post/451358/?utm_source=habrahabr&utm_medium=rss&utm_campaign=451358
Метки:
Программирование
scala
функциональное программирование
implicit
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-