Собственно, я написал скрипт scala, который сортирует функцию на основе некоторого параметра. Посмотрите на код ниже надреза:Как реорганизовать scala-код?
object TestTypes {
type SortFn = ((String, TestMetricFields)) => Double
case class TestMetricFields(maths: Int, science: Int)
}
trait TestMarks {
def sName: String
def getSortFun(): SortFn
}
object TestMarkStudent extends TestMarks {
override def sName: String= "xxx"
override def getSortFun(): SortFn = {
input: (String, TestMetricFields) => input._2.maths + input._2.science
}
}
Здесь я хочу, чтобы избежать использования ._2
в коде выше. Как переписать код scala?
Я пробовал следующее, но мне не удалось.
override def getSortFun(): (String, TestMetricFields) => SortFn = {
(sName: String, testField: TestMetricFields) => {
input: (String, TestMetricFields) => 1.0 * testField.maths + testField.science
}
}
Может кто-нибудь поможет мне рефакторинг кода без использования ._2
?
Что вы должны избегать использования '_2'? – Todd