У меня есть массив элементов типа Any. Я использую некоторые значения для конкатенации их в строку в одной строке в декларации карты:Разница между конкатенацией любых в карте по сравнению с функцией
val mapRequest = Map(
"the_geom" -> "CDB_LatLng(" + row(2).toString() + ", " + row(3).toString() + ")"
)
Это дает мне эту ошибку, которую я не понимаю:
[error] /path/to/file/Signal.scala:92: type mismatch;
[error] found : String
[error] required: (?, ?)
Когда я положил, что конкатенации внутри функции и использовать его как это:
val mapRequest = Map(
"the_geom" -> Utils.getGeom(row(2), row(3))
)
Если функция getGeom определяется следующим образом:
def getGeom(lat:Any, lon:Any) : String = {
return "CDB_LatLng(" + lat.toString() + ", " + lon.toString() + ")"
}
Все работает.
Можете ли вы объяснить, что отличается от того, что такое выражение конкатенации внутри объявления карты и объявление функции?