ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

框架结构

2021-05-03 16:31:29  阅读:161  来源: 互联网

标签:Set 元素 List 接口 Collection 集合 框架结构


框架结构

框架示图

图示所有集合类都在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

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有