У меня был список Scala кортежи, как в следующем:Неожиданное модель Scala соответствие синтаксиса
val l = List((1,2),(2,3),(3,4))
, и я хотел отобразить его в списке Int, где каждый элемент является суммой Ints в соответствующий кортеж. Я также не хотел использовать, чтобы использовать x._1 обозначение, так что я решил проблему с совпадающей картиной, как этого
def addTuple(t: (Int, Int)) : Int = t match {
case (first, second) => first + second
}
var r = l map addTuple
Doing, что я получил список г: List [Int] = Список (3, 5, 7), как ожидалось. На данный момент, практически случайно, я обнаружил, что я могу достичь того же результата с сокращенной форме, как следующее:
val r = l map {case(first, second) => first + second}
Я не могу найти ссылку на этот синтаксис в документации у меня есть. Это нормально? Я пропустил что-то тривиальное?
Этот синтаксис хорош, но для таких вещей я предпочитаю l.map (t => t._1 + t._2). Я думаю, что нет ничего плохого в синтаксисе x._1 – Landei