xs.iterator An iterator that yields every element in xs, in the same order as foreach traverses elements.
xs takeRight n A collection consisting of the last n elements of xs (or, some arbitrary n elements, if no order is defined).
xs dropRight n The rest of the collection except xs takeRight n.
xs sameElements ys A test whether xs and ys contain the same elements in the same order
这样做是为了实现最大限度的代码重用。具有特定结构(可遍历、映射等)的类的具体 一般实现是在 Like 类中完成的。然后,用于一般使用的类将重写可优化的选定方法。
伙伴方法的用途(例如 List.partners)
类的构建器,即知道如何以一种可以被诸如 map之类的方法使用的方式创建该类的实例的对象,是由伴随对象中的一个方法创建的。因此,为了构建一个 X 类型的对象,我需要从 X 的伴随对象中获取构建器。不幸的是,在 Scala 中,没有办法从类 X 到对象 X。因此,在 X 的每个实例中都定义了一个方法 companion,它返回类 X 的伴随对象。