Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala代码:反向操作_Scala - Fatal编程技术网

Scala代码:反向操作

Scala代码:反向操作,scala,Scala,我想确保正确理解一些scala代码。我在类中有一个方法,如下所示: def getNodes(): IndexedSeq[Node] = allNodes 然后在某个地方调用此方法,称为: val nodes = graph.getNodes() 然后是一条线 val orderedNodes = nodes ++ nodes.reverse 这是否会产生另一个序列,其中原始序列和反向序列连接在一起,或者还有其他微妙之处?是的,结果是一个新的IndexedSeq,包含与您所写的相同的项。您

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

def getNodes(): IndexedSeq[Node] = allNodes
然后在某个地方调用此方法,称为:

val nodes = graph.getNodes()
然后是一条线

val orderedNodes = nodes ++ nodes.reverse

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

是的,结果是一个新的IndexedSeq,包含与您所写的相同的项。您正在调用的方法
++
reverse
在这里有详细的说明:

您的代码可以这样编写:

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

是的,结果是一个新的IndexedSeq,它包含与您编写的一样的项。您正在调用的方法
++
reverse
在这里有详细的说明:

您的代码可以这样编写:

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

我相信它会生成一个新的序列,其中节点的顺序与节点的顺序相反。我不知道为什么会被称为
orderedNodes
。应该没有任何微妙之处,但我们需要查看完整的源代码才能确定,并让我们知道这是哪个图形库。谢谢。可以在这里找到这个库:我试图理解它背后的方法。我认为orderedNodes排序指示了算法访问节点的顺序。我相信它会生成一个新的序列,其中节点的顺序与节点的顺序相反。我不知道为什么会被称为
orderedNodes
。应该没有任何微妙之处,但我们需要查看完整的源代码才能确定,并让我们知道这是哪个图形库。谢谢。可以在这里找到这个库:我试图理解它背后的方法。我认为orderedNodes排序表示算法访问节点的顺序。