框架结构
作者:互联网
框架结构
框架示图
图示所有集合类都在Java.util包下。其中的集合类主要由Collection和Map这两个接口派生而来。Collection是一组允许重复的无序的对象,Map是一组键–值对象,两者为并列关系。
Collection:
Collection接口下有两个子接口 List接口和Set接口。List接口有序,允许重复;Set接口无序,不允许重复。
List:
List接口主要的实现类为ArrayList和LinkedList。
ArrayList就是一组可改变大小的数组,其优势为方便遍历,但是删除和插入性能低下。
Linkedlist是链表结构,优势是删除和插入性能优良,但其遍历性能较低。
两者由于都是List的实现类,所以Arraylist和LinkedList都是有序的可重复的。想要访问集合中的元素可以通过索引值来访问。
Set:
Set接口下主要的实现类就是HashSet。HashSet是无序集合,集合中的元素不可以重复,访问集合中的元素只能根据元素本身来访问(也是集合里元素不允许重复的原因)。
Map:
HashMap是Map接口上的重要实现类,其底层结构就jdk1.7之前就是数组+链表,在jdk1.8之后是数组+链表+树。
在HashMap中添加键值对的原理就是先获取key的哈希值,并且运算得出其在诉诸中的索引值。若该索引值处没有元素,直接存放;若该索引值处有其他元素则比较key值是否相等,相等则直接覆盖,不相等就挂在已存放值之后。
HashMap的优势是能根据键对象快速查找(定位),劣势是多个键映射用一个下标
标签:Set,元素,List,接口,Collection,集合,框架结构 来源: https://blog.csdn.net/YYDS_emmm/article/details/116377076