添加到集合然后对其进行排序还是添加到已排序的集合更快?
2022-08-31 12:08:23
如果我有这样的话:Map
HashMap<Integer, ComparableObject> map;
并且我想获得使用自然排序排序的值的集合,哪种方法最快?
(一)
创建可排序集合的实例,例如 ,添加值,然后对其进行排序:ArrayList
List<ComparableObject> sortedCollection = new ArrayList<ComparableObject>(map.values());
Collections.sort(sortedCollection);
(二)
创建一个有序集合的实例,如 ,然后添加值:TreeSet
Set<ComparableObject> sortedCollection = new TreeSet<ComparableObject>(map.values());
请注意,生成的集合永远不会被修改,因此排序只需要进行一次。