Java.数据结构.TreeMap

news/2024/10/4 15:08:07 标签: java, 数据结构, 开发语言
一、什么是TreeMap

        TreeMap是Java集合框架中的一部分,并且基于红黑树数据结构。这说明TreeMap能够高效地执行键值对的存储、检索、排序等操作。

二、TreeMap的特点

有序性:TreeMap会根据键的自然顺序进行排序,当然,你也可以通过重写Comparator自己来进行排序。

唯一性:TreeMap中的键是唯一的,不能重复。如果有两个键相等,则后插入的值会覆盖先前的值。

效率:TreeMap是基于红黑树实现的,其时间复杂度为O(log n)。

三、TreeMap的基本操作

1.添加元素:使用put(K key, V value)方法。 

java">TreeMap<Integer, String> map = new TreeMap<>();  
map.put(1, "One");  
map.put(2, "Two");

2.获取元素

                      使用get(Object key)方法。

java">String value = map.get(1); // 返回 "One"

3.删除元素:使用remove(Object key)方法。

java">map.remove(1); // 删除键为1的元素

4.遍历元素

                     通过entrySet()遍历键值

java">for (Map.Entry<Integer, String> entry : map.entrySet()) {  
    System.out.println(entry.getKey() + ": " + entry.getValue());  
}

                     通过keySet()遍历键。

java">for (Integer key : map.keySet()) {  
    System.out.println(key);  
}

                     通过values()遍历值。

java">for (String value : map.values()) {  
    System.out.println(value);  
}

5.判断是否包含Key或Value

                      判断是否包含Key

java">Boolean flag = map.containsKey(1)//由于有 1 这个Key因此返回True

                      判断是否包含Value

java">Boolean flag = map.containsValue("One")//由于有 One 这个Value因此返回True


http://www.niftyadmin.cn/n/5690063.html

相关文章

个人项目简单https服务配置

1.SSL简介 SSL证书是一种数字证书&#xff0c;由受信任的证书颁发机构&#xff08;CA&#xff09;颁发&#xff0c;用于在互联网通信中建立加密链接。SSL代表“安全套接层”&#xff0c;是用于在互联网上创建加密链接的协议。SSL证书的主要目的是确保数据传输的安全性和隐私性…

【C++掌中宝】从std的角度来进一步了解命名空间

文章目录 前言1. 什么是命名空间&#xff08;namespace&#xff09;&#xff1f;2. \<iostream\>和\<iostream.h\>的区别3. C命名空间的三种使用方式3.1 直接指定标识符3.2 使用 using 关键字3.3 使用 using namespace std 4. 为什么避免使用 using namespace std5…

腾讯云技术深度解析:从微服务到AI编程助手的应用实践

腾讯云技术深度解析&#xff1a;从微服务到AI编程助手的应用实践 在当今云计算技术日新月异的时代&#xff0c;腾讯云作为业界领先的云服务提供商&#xff0c;不断推出创新技术和解决方案&#xff0c;助力企业数字化转型。本文将深入探讨腾讯云在微服务架构、中间件以及AI编程…

螺蛳壳里做道场:老破机搭建的私人数据中心---Centos下Docker学习06(Docker网络连接)

如果要搭建基于docker的私人DC&#xff0c;除了虚拟机网络连接外&#xff0c;就得掌握docker的网络连接。磨刀不误砍柴工&#xff0c;或者说工欲善其事必先利其器&#xff0c;我们先学学典型的docker的网络连接方式。Docker的网络连接有四种&#xff1a;bridge、none、containe…

【LeetCode】动态规划—931. 下降路径最小和(附完整Python/C++代码)

动态规划—931. 下降路径最小和 前言题目描述基本思路1. 问题定义2. 理解问题和递推关系3. 解决方法3.1 动态规划方法3.2 空间优化的动态规划 4. 进一步优化4.1 空间复杂度优化 5. 小总结 代码实现Python3代码实现Python 代码解释C代码实现C 代码解释 总结: 前言 在算法的学习…

考研论坛平台|考研论坛小程序系统|基于java和微信小程序的考研论坛平台小程序设计与实现(源码+数据库+文档)

考研论坛平台小程序 目录 基于java和微信小程序的考研论坛平台小程序设计与实现 一、前言 二、系统功能设计 三、系统实现 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介绍&#xff1a;✌️大厂…

深度学习数据增强的常用方法

以下是在深度学习中经常使用的图像增强的方法 目录 前言 1、加噪声 2、调整亮度 3、cutout 4、旋转 5、对比度增强 6、仿射变化扩充图像 7、HSV数据增强 8、错切变化扩充图像 9、平移扩充图像&#xff0c;根图像移动的像素距离可自行调整&#xff0c;具体方法如下注释所示 10、…

【2022工业3D异常检测文献】AST: 基于归一化流的双射性产生不对称学生-教师异常检测方法

Asymmetric Student-Teacher Networks for Industrial Anomaly Detection 1、Background 所谓的学生-教师网络&#xff0c;首先&#xff0c;对教师进行训练&#xff0c;以学习语义嵌入的辅助性训练任务&#xff1b;其次&#xff0c;训练学生以匹配教师的输出。主要目的是让学生…