• Java集合框架综述


    Java集合框架综述:

    一、什么是Java集合框架:

      首先要明确,集合代表了一组对象(和数组一样,但数组长度不能变,而集合能)。Java中的集合框架定义了一套规范,用来表示、操作集合,使具体操作与实现细节解耦。

      其实说白了,可以把一个集合看成一个微型数据库,操作不外乎“增删改查”四种操作,我们在学习使用一个具体的集合类时,需要把这四个操作的时空复杂度弄清楚了,基本上就可以说掌握这个类了。

      Java集合工具包位于Java.util包下,包含了很多常用的数据结构,如数组、链表、栈、队列、集合、哈希表等。学习Java集合框架下大致可以分为如下五个部分:List列表、Set集合、Map映射、迭代器(Iterator、Enumeration)、工具类(Arrays、Collections)。

      其整体结构图大致如下:

      

      从上图可以看出:

      Collection和Map是Java集合框架的顶级接口,两者都是泛型接口

      Collection是List、Set等集合高度抽象出来的接口,它包含了这些集合的基本操作,它主要又分为两大部分:List和Set。

      Map是一个映射接口,其中的每个元素都是一个key-value键值对,同样抽象类AbstractMap通过适配器模式实现了Map接口中的大部分函数,TreeMap、HashMap、WeakHashMap等实现类都通过继承AbstractMap来实现,另外,不常用的HashTable直接实现了Map接口,它和Vector都是JDK1.0就引入的集合类。

    二、Java集合框架的重要成员综述:

      2.1Collection一族综述

      Collection继承了Iterable接口,因此Collection一族都是可迭代的

      这里我们只对Collection两个重要的子接口List和Set做一简单了解

      对于List和Set这两个接口及其实现类的深入学习,我会在后续的章节陆续展开,敬请关注我的博文,共同学习进步!

      2.2Map一族综述:

      这里只对Map一族做一简单综述,让大家明确有这样的一个大致的概念就行,从图中可以看出,虽然Collection和Map没有直接联系。但楼主这里推测Map映射的设计者还是参考了Collection,多多少少有一点点联系,见下图,诸如HashSet和HashMap,TreeSet和TreeMap,哈哈,也可能是我钻牛角尖了,欢迎大家评论区发表意见!

      同样,对于Map一族的子成员,诸如HashMap,Hashtable以及TreeMap我会在后续章节展开具体介绍,详情请关注我的博客,大家共同学习进步!

      欢迎评论区批评指正,互相学习!

      转载请注明出处,谢谢!

  • 相关阅读:
    Phpstorm+Xdebug配置
    ThinkPHP5.0---URL访问
    Thinkphp5创建控制器
    ThinkPHP5.0的安装
    网页动态背景——随鼠标变换的动态线条
    git SSH
    [go] 循环与函数
    svg make a face
    Hello Vizhub
    Beetlsql自定义生成entity,mapper,md代码
  • 原文地址:https://www.cnblogs.com/albertrui/p/8329324.html
Copyright © 2020-2023  润新知