Java Collections Framework的排序算法

kir*_*rev 4 java algorithm collections

我试图理解Java Collections Framework默认情况下如何对其集合进行排序,我感到困惑,因为我读到所有集合都是使用合并排序进行排序的.但是当我看看Array类时,我看到了这一点:«只要规范本身得到遵守,实现者就可以随意替换其他算法.(例如,bysort(Object [])使用的算法不必是mergesort,但它必须是稳定的.)»这意味着它还使用其他排序算法.那么集合究竟是如何排序的呢?

Joa*_*uer 5

使用JRE/JDK提供排序集合的代码.

任何实现 JRE/JDK的人都可以选择以他想要的任何方式实现它,只要它符合要求(即它实际上正确地对集合进行排序并且排序是稳定的).

某些实现可能会选择merge-sort,其他实现可能会选择其他实现.无需具体实施.