1

Sun 提供了TreeSetTreeMap但没有 TreeList。他们提供了一个实用程序Collections.sort()来对列表进行排序。当他们提供Sorted Map和Set时,他们没有提供Sorted List的原因是什么?

这背后有什么具体原因吗?

我正在为 SCJP 做准备,所以在经历GenericsandCollections时,我有这个疑问。谁能澄清一下。

4

1 回答 1

4

List API 中的第一行表示它是一个有序集合(也称为序列)。如果对列表进行排序,则无法保持顺序,因此 Java 中没有 TreeList。可能就是这种情况,您需要像您提到的那样对其进行外部排序。
正如 API 所说,Java List 从 Sequence 中获得灵感,并查看序列属性http://en.wikipedia.org/wiki/Sequence_(mathematics)

这并不意味着您不能对列表进行排序,而是 Java 严格遵守他的定义,并且默认情况下不提供列表的排序版本。

于 2012-07-23T06:15:42.883 回答