HashMap集合
- HashMap(由键决定特点):无序、不重复、无索引 (用的最多)
HashMap的底层原理
- HashMap跟Hashset的底层原理是一一样的,都是基于哈希表实现的
- Hashset:Set系列集合:Hashset、LinkedHashset、TreeSet --java学习笔记-CSDN博客
- 实际上:原来学的Set系列集合的底层就是基于Map实现的,只是Set集合中的元素只要键数据,不要值数据而已
- HashMap集合是一种增删改查数据,性能都较好的集合
- 但是它是无序,不能重复,没有索引支持的(由键决定特点)
- HashMap的键依赖hashcode方法和equals方法保证键的唯一
- 如果键存储的是自定义类型的对象,可以通过重写hashcode和equals方法,这样可以保证多个对象内容一样时,HashMap集合就能认为是重复的
哈希表
- JDK8之前,哈希表=数组+链表
- JDK8开始,哈希表=数组+链表+红黑树
- 哈希表是一种增删改查数据,性能都较好的数据结构