Java 集合类笔记
2021/9/10 1:04:07
本文主要是介绍Java 集合类笔记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Hashtable、HashMap、TreeMap 三者区别
比较点 | Hashtable | HashMap | TreeMap |
---|---|---|---|
key | 不能为null | 可以为 null | |
value | 不能为 null | 可以为 null | |
key | 一定情况下可以为 null | ||
有序性 | 无序 | 无序 | 有序 |
容量 | 初始 11 | 初始 16,且一定为 2 n 2^n 2n | |
扩容 | 2n+1 | 2n | |
线程安全性 | 线程安全 | 线程不安全 | |
hash 值计算 | 底层是模运算,效率较低 | 底层是移位运算 |
TreeMap 关于 key 为 null 的说明:TreeMap 初始化时可以传入 Comparator 参数,但也可以不传入。如果没有传入,在 put 元素时,默认使用 key 实现的 Comparable 进行比较然后按顺序存储(如果 key 没有实现 Comparable,在 ClassCast 的时候直接抛出异常),当然,key 如果为 null,则调用方法 compare 直接空指针异常。
但是,如果传入 Comparator,那么在 Comparator 的方法 compare 中,小心地判断了 key 为 null 的情况,也是可以将 key 存储为 null 的。
这篇关于Java 集合类笔记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南