TreeMap默认按照key自然升序排序可以使用逆序降序排序

new TreeMap<String,String>(Collections.reverseOrder())‌ 这行代码创建了一个TreeMap对象,其中键的类型为String,值的类型为TBEvaluationApplyBidHistory。这个TreeMap使用Collections.reverseOrder()方法来定义键的自然顺序为降序。

TreeMap的基本概念和特性

  • ‌有序性‌:TreeMap通过红黑树数据结构来维护键值对的顺序,可以保证键值对按照键的自然顺序或自定义顺序排列。
  • ‌元素唯一性‌:在TreeMap中,每个键是唯一的,相同的键只能存储一个元素,如果插入一个已经存在的键,新的值会覆盖原有的值。
  • ‌线程不安全‌:与HashMap类似,TreeMap也是线程不安全的,如果在多线程环境下使用,需要进行同步处理。
  • ‌性能优异‌:TreeMap的基本操作(如插入、查找和删除)的时间复杂度为O(log n),适合处理大量的键值对。
  • ‌内存占用较高‌:由于内部采用红黑树数据结构,TreeMap的内存占用比HashMap稍高。

示例代码

import java.util.Collections;
import java.util.TreeMap;

public class TreeMapExample {
    public static void main(String[] args) {
        // 创建一个TreeMap,键为String类型,值为TBEvaluationApplyBidHistory类型
        // 使用Collections.reverseOrder()定义键的自然顺序为降序
        TreeMap<String, TBEvaluationApplyBidHistory> tmap = new TreeMap<>(Collections.reverseOrder());
        
        // 添加元素到TreeMap中
        tmap.put("2023-01-01", new TBEvaluationApplyBidHistory(/* 初始化参数 */));
        tmap.put("2023-02-01", new TBEvaluationApplyBidHistory(/* 初始化参数 */));
        tmap.put("2023-03-01", new TBEvaluationApplyBidHistory(/* 初始化参数 */));
        
        // 遍历TreeMap并打印结果,按键的降序排列显示
        for (Map.Entry<String, TBEvaluationApplyBidHistory> entry : tmap.entrySet()) {
            System.out.println(entry.getKey() + ": " + entry.getValue());
        }
    }

 

posted @ 2025-04-24 17:41  逝年的我们  阅读(43)  评论(0)    收藏  举报