Почему scala не выводит тип из параметров универсального типа?
Предположим, эта функция
def func[A](data: List[A], mapper: A => String) = {
data.map(item => mapper(item))
}
Почему этот код не компилируется:
val list = List(1, 2, 3)
func(list, a => a.toString)
Но этот делает:
val list = List(1, 2, 3)
func[Int](list, a => a.toString)
Или же
val list = List(1, 2, 3)
func(list, (a: Int) => a.toString)
Покаa
тип может быть выведен из списка, которыйList
изInt
, Почему скала не выводит тип здесь?
Есть ли другой способ?