为什么"xs reverse_::: ys"有效?



来自List的 API 文档:

以相反的顺序将给定列表的元素添加到此列表的前面。xs reverse_::: ys等同于xs.reverse ::: ys,但效率更高。

让我感到困惑的是为什么xs.reverse ::: ys有效,即用空白替换下划线。

这是一种扩张吗?

当你做xs reverse_::: ys时,你只是在调用一个名为reverse_:::的函数。

当你做xs.reverse ::: ys时,你首先在xs上调用reverse函数,然后调用:::函数。

xs.reverse ::: ys将循环访问xs中的元素两次。首先是反转xs,然后是第二次将reverse的结果附加到ysreverse_:::函数将通过xs的单次迭代来执行这两个操作。

相关内容

  • 没有找到相关文章