集合框架的底层数据结构
Collection
1、list
ArrayList:Object数据
Vector:Object数据
LinkedList:双向链表
2、Set
HashSet(⽆序,唯⼀):底层是HashMap实现
LinkedHashSet:LinkedHashSet继承HashSet,并且内部通过LinkedHashMap来实现的。
TreeSet(有序,唯⼀):红⿊数
3、Map
HashMap:JDK1.8之前采⽤数组+链表,数据是HashMap的主体,链表则主要为了解决哈希冲突。JDK1.8之后解决哈希冲突有了较⼤的变化,当链表的长度⼤于阈值(默认是8),将链表转化为红⿊树,减少搜索时间。
LinkedHashMap:LinkedHashMap 继承⾃ HashMap,所以它的底层仍然是基于拉链式散列结构即由数组和链表或红⿊树组成。另外,LinkedHashMap 在上⾯结构的基础上,增加了⼀条双向链表,使得上⾯的结构可以保持键值对的插⼊顺序。数组和链表
HashTable:数组+链表组成。
TreeMap:红⿊树实现
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论