为什么`xs reverse _ ::: ys`有效?

wan*_*907 2 scala

从以下API文档List:

在此列表前面以相反的顺序添加给定列表的元素.xs reverse_::: ys相当于xs.reverse ::: ys但效率更高.

令我困惑的是为什么xs.reverse ::: ys工作,即用空白替换下划线.

这是一种扩张吗?

mar*_*ran 6

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

当您这样做时xs.reverse ::: ys,首先打开该reverse功能xs,然后调用该:::功能.

xs.reverse ::: ysxs两次迭代元素.首先,当你扭转xs,那么第二次,当你追加的结果reverseys.该reverse_:::函数将通过单次迭代完成两个操作xs.