HashMap:无序,元素根据哈希值随机插入。遍历顺序不保证与插入顺序一致,且修改(如扩容)可能改变顺序
Comparable:
接口定义在类内部,compareTo(T o) 方法比较当前对象与另一对象。
修改类实现自然排序(如 String 的字母序)。
Comparator:
独立类实现,compare(T o1, T o2) 方法比较两个对象。
灵活定义外部排序规则,无需修改原类。
List: Collections.sort(list)(需元素实现 Comparable)或 Collections.sort(list, comparator)(自定义 Comparator)
Set:TreeSet 自动排序(基于 Comparable 或构造时传入 Comparator)
Map:TreeMap 按键自动排序(基于 Comparable 或构造时传入 Comparator)
其他转为 List 或 TreeSet/TreeMap 后排序