У меня был список кортежей 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
. Так я получил список r: List [Int] = List (3, 5, 7) как и ожидалось. В этот момент почти случайно я обнаружил, что могу достичь того же результата с помощью такой сокращенной формы, как следующая:
val r = l map {case(first, second) => first + second}
Я не могу найти никаких ссылок на этот синтаксис в имеющейся у меня документации. Это нормально? Я упустил что-то тривиальное?