Scala - Два списка списка кортежей - программирование
Подтвердить что ты не робот

Scala - Два списка списка кортежей

В прошлом году у меня был довольно много опыта со стандартным ML, но я не делал никаких реальных функциональных программ примерно через 10 месяцев. Теперь, когда я нахожусь на побеге Scala, мне трудно найти операцию, которую я широко использовал в стандартном ML при написании компилятора (хотя, честно говоря, этот метод, возможно, не был библиотечным методом).

В принципе, у меня есть два списка:

List("a","b","c")
List(1,2,3)

И я хочу операцию, которая даст мне список кортежей вроде этого:

List(("a",1), ("b",2), ("c",3))

Есть ли стандартная функция Scala, которую я могу использовать для получения этого результата? (Я думаю, мы назвали его zip-функцией в стандартном ML, но это, похоже, относится к чему-то другому, когда я искал функции Scala zip.)

4b9b3361

Ответ 1

Вы правы, вы можете использовать zip:

val a = List("a","b","c")
// a: List[String] = List(a, b, c)

val b = List(1,2,3)
// b: List[Int] = List(1, 2, 3)

a zip b  // beautified a.zip(b) 
//res0: List[(String, Int)] = List((a,1), (b,2), (c,3))