написание функции в Scala, который принимает массив/кортежей/Seq различных типов значений и сортирует его на основе первых двух значений в каждой:Скала Массив различных типов значений
def sortFunction[T](input: Array[T]) = input(0)+ " " + input(1)
входных значений Я есть, как показано ниже:
val data = Array((1, "alpha",88.9), (2, "alpha",77), (2, "beta"), (3, "alpha"), (1, "gamma",99))
Тогда я называю sortFunction как:
data.sortWith(sortFunction)
Это дает ниже ошибки:
- polymorphic expression cannot be instantiated to expected type; found : [T]scala.collection.mutable.Seq[T] ⇒ Int required: ((Int, String)) ⇒ ? Error occurred in an application involving default arguments.
- type mismatch; found : scala.collection.mutable.Seq[T] ⇒ Int required: ((Int, String)) ⇒ ? Error occurred in an application involving default arguments.
Что я делаю неправильно, или как мне обойти это? Я был бы признателен за любые предложения.
Ваша функция сортировки ничего не сортировать. Он просто берет первые два элемента из «Массив» и пытается создать из них «String». – jwvh
sortfunction отмечает, но конкатенирует данные входы – BDR