Scala代码:反向操作

时间:2014-02-23 01:19:28

标签: scala

我想确保正确理解一些scala代码。我在类中有一个方法:

def getNodes(): IndexedSeq[Node] = allNodes

然后在某个地方调用此方法:

val nodes = graph.getNodes()

然后有一行

val orderedNodes = nodes ++ nodes.reverse

这是否会产生另一个序列,其中原始序列和反向连接被连接起来或者还有其他一些细微之处?

1 个答案:

答案 0 :(得分:4)

是的,结果是一个新的IndexedSeq包含与你写的一样的项目。您正在调用此处详细记录的方法++reversehttp://www.scala-lang.org/api/2.10.3/index.html#scala.collection.IndexedSeq

您的代码可以这样写:

val orderedNodes = nodes.++(nodes.reverse)