Java 集合框架01-----Java集合总览

举报
码农飞哥 发表于 2021/05/29 11:27:21 2021/05/29
【摘要】 今天开始阅读Java集合源码了。重点掌握ArrayList,HashMap的源码 前置问题: HashMap的数据结构是什么?如何实现的。和HashTable,ConcurrentHashMap的区别ArrayList是如何实现的,ArrayList和LinkedList的区别?ArrayList如何实现扩容。 集合框架类图如下图所示: 接下来我们将按照这个...

今天开始阅读Java集合源码了。重点掌握ArrayList,HashMap的源码

前置问题:

  1. HashMap的数据结构是什么?如何实现的。和HashTable,ConcurrentHashMap的区别
  2. ArrayList是如何实现的,ArrayList和LinkedList的区别?ArrayList如何实现扩容。

集合框架类图如下图所示:

集合框架类图.png
接下来我们将按照这个类图来开始我们的分析之旅。

总体说明:

最根部就是两个接口CollectionMap
1. Collection 主要有List,SetQueue三个分支,Collection定义了集合的基本操作,如集合的查找,修改,合并
- List是一个有序队列,允许重复元素,其实现类ArrayList,LinkedListVector
- Set不允许有重复元素。其实现类有HashSetTreeSet,HashSet的实现依赖于HashMapTreeSet的实现依赖于TreeMap
2. Map是一个映射接口,即key-value 键值对,其key值只允许一个为null,Value 值可以允许多个值为null。
3. Iterator是集合的遍历工具,即我们通常所说的Iterator迭代器。Collection依赖于Iterator,所有Collection的所有实现类都要依赖Iterator
4. ArraysCollection是操作数组和集合的工具类。

文章来源: feige.blog.csdn.net,作者:码农飞哥,版权归原作者所有,如需转载,请联系作者。

原文链接:feige.blog.csdn.net/article/details/79118420

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。