为什么排序方法是 Collections 而不是 AbstractList 的一部分?

Why is sort method part of Collections instead of AbstractList?

当排序方法仅适用于列表时,我觉得将其保存在集合中 class 有点问题。不应该有一个单独的 class 专门用于列表吗?也许是 AbstractList 或类似 ListUtil 的东西.. ?

Collections 是所有集合的助手 class,无论其类型如何。除了 List 的方法之外,还有特定于 Maps、SortedMaps、SortedSets 的方法,当然还有 Collections。

虽然单独为列表创建一个单独的助手是一个合理的选择,但使用单个助手 class 作为所有集合助手的单一位置也非常有意义:它使开发人员更容易记住方法在哪里,因为那里只有一个 class。

请注意,从 Java-8 开始,您可以将 sort 调用为 default method implementation on List<T>,使实现更容易定位。