Pull to refresh
6
0
Кузьма Лешаков @techkuz

Software Engineer

Send message

Неявные (implicit) параметры и преобразования в Scala

Reading time2 min
Views5.2K
Пробежавшись по предыдущим статьям на Хабре, тыц и тыц так и не удалось в быстром режиме понять, что делает неявность (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))

Запутанно? Давайте обо всём по порядку.
Читать дальше →
Total votes 23: ↑19 and ↓4+15
Comments11

Information

Rating
Does not participate
Location
Казань, Татарстан, Россия
Registered
Activity