我是scala的新手,所以请尽量详细说明。
我有一个列表,例如:
val trioElmList = List((10,20,30),(50,89,90),(60,40,65))
如何获取每个元组的中间元素的新列表?结果应该是:
newList : List[(Int, Int)] = List((10,30), (50,90), (60,65))
答案 0 :(得分:9)
您可以使用map方法将函数应用于列表的每个元素,并使用该函数的返回值创建一个新列表。在函数中,使用模式匹配来获取元组的元素,并返回仅包含第一个和最后一个元素的元组。
trioElmList.map { case (x,y,z) => (x,z) }
答案 1 :(得分:-2)
如果您的case
输入得当,则不需要任何List
。
val l: List[Tuple3[_, _, _]] = List((1,2,3), (2,3,4), (3,4,5))
l map (e => (e._1, e._3))