java 集合架构_java集合类框架,你了解多少?

在平时写代码的时候,我们经常会使用到java的一些集合类,还记得我在刚刚学习的时候,因为这些集合类太多,没有把他们的特点还有使用场景记清楚,所以在使用的时候对软件的性能造成了很大的影响,因此现在我想把这些集合类进行一个详细的整理,方便别人面试或者是初学者理解其概念。这篇文章并没有对每一个集合类进行分析,而是一个整体的框架的认识。在后期会陆续发表出来

这篇文章的大体结构如下:1、对java集合框架一个整体的认识和了解2、通过继承关系图认识集合的整体框架3、提前给出各个集合类的使用场景等

一、集合框架的认识

对于集合框架的认识,为了防止时间久,而印象变得模糊,所以我自己是这样记得,这个方法以供参考吧,假定给定一个集合类,可以把他当成一个人,首先记住从哪里来(继承关系),然后有什么本事(底层的数据结构决定了特点),最后到哪里去(使用场景)。

根据上述的思路,先看一下来源(在这里先不说继承关系),Java集合是java提供的工具包,包含了常用的数据结构:集合、链表、队列、栈、数组、映射等。Java集合工具包位置是java.util.*

有什么本事呢?Java集合主要有4个部分:List列表、Set集合、Map映射、工具类(Iterator迭代器、Enumeration枚举类、Arrays和Collections)。

使用场景呢?一句话,每一个容器(集合类)能盛不同的液体(数据)。所以容器的功能不同使用场景不同。

二、java集合类框架

为了清晰的认识,来张图。

d8047e2296e30fd2a89b62e076fe26c1.png

太多了,是不是有点乱,别着急,现在把他们捋一捋分个类就清晰了。

先抓住它的主干,即Iterator、Collection和Map。(虚框线是接口,实框线是类)

1、 Collection

包含了集的基本操作和属性的高度抽象的接口。

Collection包含了List和Set两大分支。

(1) List是一个有序的队列,实现类有4个:LinkedList, ArrayList, Vector, Stack。

(2) Set是一个不允许有重复元素的集合。实现类有3个:TreeSet、HastSet、LinkHastSet。

2、 Map

一个映射接口,即key-value键值对。

(1)AbstractMap是个抽象类,它实现了Map接口中的大部分API。实现类有6个:TreeMap、HashMap、LinkHashMap、IdentityHashMap、WeakHashMap、HashTable

(2)SortedMap 是继承于Map的接口。内容是排序的键值对,通过比较器(Comparator)

3、Iterator。

它是遍历集合的工具,即我们通常通过Iterator迭代器来遍历集合。

三、集合总体框架的各个类的使用场景

为了描述方便,我觉得还是图比较直观

5ef42daa57d61a5d77ea903814a89a04.png

具体的,可以先有个印象,等把所有的集合类学完了之后,再来看这个印象会比较深刻一点。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值