Scala 嵌套列表
Scala nested Lists
我正在尝试从 Scala 中的嵌套列表中获取值,但不知何故我无法找到解决方案。
我创建了一个列表:
var list3 = List((1,2,3),(4,5,6),(7,8),(9,10,11,12))
我需要 7 作为输出。
在 Python 中,为了同样的事情,我将列表创建为
list3 = [[1,2,3],[4,5,6],[7,8],[9,10,11,12]]
为了得到 7 的输出,我使用
list3[len(list3) -2][len(list3) -4]
请建议我如何在 Scala 中实现相同的目标。
提前致谢。
list3
不是列表的列表,它是 元组 的列表。您可以按如下方式创建列表列表:
var list3 = List(List(1,2,3),List(4,5,6),List(7,8),List(9,10,11,12))
那么,您的 python 代码的 Scala 版本就可以工作了:
scala> list3(list3.size - 2)(list3.size - 4)
res3: Int = 7
您可以使用 productElement
如下
scala> var list3 = List((1,2,3),(4,5,6),(7,8),(9,10,11,12))
list3: List[Product with Serializable] = List((1,2,3), (4,5,6), (7,8), (9,10,11,12))
scala> list3(list3.length -2).productElement(list3.length-4)
res0: Any = 7
我正在尝试从 Scala 中的嵌套列表中获取值,但不知何故我无法找到解决方案。
我创建了一个列表:
var list3 = List((1,2,3),(4,5,6),(7,8),(9,10,11,12))
我需要 7 作为输出。
在 Python 中,为了同样的事情,我将列表创建为
list3 = [[1,2,3],[4,5,6],[7,8],[9,10,11,12]]
为了得到 7 的输出,我使用
list3[len(list3) -2][len(list3) -4]
请建议我如何在 Scala 中实现相同的目标。
提前致谢。
list3
不是列表的列表,它是 元组 的列表。您可以按如下方式创建列表列表:
var list3 = List(List(1,2,3),List(4,5,6),List(7,8),List(9,10,11,12))
那么,您的 python 代码的 Scala 版本就可以工作了:
scala> list3(list3.size - 2)(list3.size - 4)
res3: Int = 7
您可以使用 productElement
如下
scala> var list3 = List((1,2,3),(4,5,6),(7,8),(9,10,11,12))
list3: List[Product with Serializable] = List((1,2,3), (4,5,6), (7,8), (9,10,11,12))
scala> list3(list3.length -2).productElement(list3.length-4)
res0: Any = 7