如何正确打开 Java 集合框架

1、Java 集合框架的认识
  • 我们平时写代码时候,经常会用到 Java 的一些集合类,但是我们有真正的人系统的认识它们吗?或者你认识了,过了一段时间你还记得它们吗?相信大多数同学都是仅仅对集合类中的某一些常用的类有印象,因此现在我想把这些集合类进行一个详细的整理,从而方便自己和大家们一起加深对 Java 集合类的认识。
  • 根据上述思路,咱们先看下来源,Java 集合是 Java 提供的工具包,包含了常用的数据结构:集合、链表、队列、栈、数组、映射等等,Java 集合工具包的位置是 java.util.*,Java 集合主要有4个部分:List 列表、Set 集合、Map 映射、工具类(Iterator 迭代器、Enumeration 枚举类、Arrays 和 Collections)。
  • 集合框架是一个用来代表和操纵集合的统一架构,所有的集合框架都包含如下内容:
    • 接口:是代表集合的抽象数据类型。例如 Collection、List、Set、Map 等。之所以定义多个接口,是为了以不同的方式操作集合对象。
    • 实现(类):是集合接口的具体实现。从本质上讲,它们是可重复使用的数据结构,例如:ArrayList、LinkedList、HashSet、HashMap。
    • 算法:是实现集合接口的对象里的方法执行的一些有用的计算,例如:搜索和排序。这些算法被称为多态,那是因为相同的方法可以在相似的接口上有着不同的实现。
    • 除了集合,该框架也定义了几个 Map 接口和类。Map 里存储的是键/值对。尽管 Map 不是集合,但是它们完全整合在集合中。
2、Java集合框架图

Java集合框架图

  • 注意:细虚线框是接口,粗虚线框是抽象类,实线框是具体类,Produces 代表。
  • 看到上图后是不是觉得有点乱,别着急,现在咱们把它们捋一捋分个类就清楚了。
  • (1)Collection,具有集合的基本操作和属性的高度抽象的接口,有三个子类分别如下:
    • List 是一个有序的队列,实现类有:Vector、Stack、ArrayList、LinkedList。
    • Set 是一个不允许有重复元素的集合。实现类有:HastSet、LinkHastSet、TreeSet。
    • Queue 是一个特殊的线性表(队列),实现类有:LinkedList、PriorityQueue。
  • (2)Map,一个映射接口,即 key-value 键值对。
    • AbstractMap 是个抽象类,它实现了 Map 接口中的大部分 API。实现类有6个:HashMap、LinkHashMap、Hashtable、TreeMap、IdentityHashMap、WeakHashMap。
    • SortedMap 是继承于 Map 的接口。内容是排序的键值对,通过比较器(Comparator)。
  • (3)Iterator,它是遍历集合的工具,即我们通常通过Iterator迭代器来遍历集合。
3、Java 集合框架各种类的使用场景
  • 为了方便描述,直接上图比较直观
    Java 集合框架对比图
总结
  • 参考文献:
  • https://www.runoob.com/java/java-collections.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值