treeMap的简单使用

本文档主要介绍了TreeMap在Java编程中的基本使用方法,包括插入、删除、查找等操作。后续将深入探讨TreeMap的内部实现机制,帮助读者理解其工作原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

treeMap的简单使用,后续介绍底层实现

import java.util.HashMap;
import java.util.Map;
import java.util.SortedMap;
import java.util.TreeMap;

/**
 *
 * TreeMap 的 tailMap()、headMap()、firstKey() 方法使用
 *
 */
public class TreeMapDemo1 {

    public static void main(String[] args) {

        TreeMap<Integer,String> treeMap = new TreeMap<>();
        /**
         * 1、添加元素
         */
        treeMap.put(2,"two");
        treeMap.put(1,"one");
        treeMap.put(3, "three");
        treeMap.put(6, "six");
        treeMap.put(5, "five");

        Map<Integer,String> map = new HashMap<>();
        map.put(8,"八");
        map.put(7,"七");
        treeMap.putAll(map);
        System.out.println(treeMap);

        /**
         * 2、删除元素
         *  void clear():清空TreeMap中的所有元素
         *  V remove(Object key):从TreeMap中移除指定key对应的映射
         */

        /**
         * 3、修改元素
         *  V replace(K key, V value):替换指定key对应的value值
         *  boolean replace(K key, V oldValue, V newValue):当指定key的对应的value为指定值时,替换该值为新值
         */


        /**
         * 4、查找元素
         * boolean containsKey(Object key):判断该TreeMap中是否包含指定key的映射
         * boolean containsValue(Object value):判断该TreeMap中是否包含有关指定value的映射
         * v get(K key):返回指定key对应的value
         *
         * Map.Entry<K, V> firstEntry():返回该TreeMap的第一个(最小的)映射
         * K firstKey():返回该TreeMap的第一个(最小的)映射的key
         * Map.Entry<K, V> lastEntry():返回该TreeMap的最后一个(最大的)映射
         * K lastKey():返回该TreeMap的最后一个(最大的)映射的key
         *
         * SortedMap<K, V> headMap(K toKey):返回该TreeMap中严格小于指定key的映射集合
         * SortedMap<K,V> tailMap(K fromKey):返回大于等于fromkey的数据
         * SortedMap<K, V> subMap(K fromKey, K toKey):返回该TreeMap中指定范围的映射集合(大于等于fromKey,小于toKey)
         *
         */

        SortedMap<Integer, String> tailMap = treeMap.tailMap(3);
        System.out.println("tail map values "+tailMap);

        SortedMap<Integer, String> headMap = treeMap.headMap(3);
        System.out.println("head map values "+headMap);

        Integer firstKey = treeMap.firstKey();
        System.out.println("first key "+firstKey);

        /**
         * 5、遍历接口
         * Set<Map<K, V>> entrySet():返回由该TreeMap中的所有映射组成的Set对象
         * void forEach(BiConsumer<? super K,? super V> action):对该TreeMap中的每一个映射执行指定操作
         * Collection<V> values():返回由该TreeMap中所有的values构成的集合
         */


        /**
         * for循环
         *
         * for (Map.Entry entry : treeMap.entrySet()) {
         *       System.out.println(entry);
         * }
         *
         * 迭代器循环
         *
         * Iterator iterator = treeMap.entrySet().iterator();
         * while (iterator.hasNext()) {
         *       System.out.println(iterator.next());
         * }
         *
         */

    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值