java集合框架由来

java 集合框架的由来

java集合框架由来
在Java2之前,java是没有完整的集合框架的,它只有一些简单的可以自扩展的容器类,比如Vector,Stack,Hashtable等。java collections Framework(JCF)是通用的容器。

为什么存在容器类?

  • 容器类可以存储多个数据,且java的容器类只能存放对象,对于基本类型(int,long,float,double等)需要被包装成对象类型后(Integer,Long,Float,Double等)才能放到容器里。这样会导致额外的性能和空间的开销。

java集合框架由来
- 数组既可以保存基本类型的数据也可以保存对象。在数组可以存储多个数据的情况下,为什么还要定义容器类?

  • 数组的弊端:
    1.数组一旦初始化后其长度是固定不变的。

    2.如果在N个地方需要存储多个数据,都要专门编写数组的操作方法,如此一来,没有实现DRY原则,即代码功能重复—破坏封装。

    3.如果每一个人都要用到数组类,但是不同的人定义的类名和方法都是不同的,实现细节也是参差不齐的。SUN公司自己定义好累容器类,每一个开发者只管调用即可。

什么是集合框架?

尽管这些容器类非常好用,但是却不能集中和统一管理。集合框架是为表示和操作集合而规定的一种统一的标准的体系结构。

  • 任何集合框架都包含三个内容:
    1.对外的接口
    2.接口的实现
    3.对集合运算的算法(底层对应着某一种数据结构的算法)

为什么需要集合框架(有关集合的类和接口都存在与java.util的工具包中)

1.提供代码功能的复用
2.让开发者专注于业务的开发,而不是数据结构和算法

  • 常用的集合类:
    1.Set(集):集合的对象不按特定的方式排序,不允许元素重复。相当于数学中的集合
    2.List(列表):集合中的对象按照索引位置排序,允许元素重复。
    3.Map(映射):集合中的每一个元素都包含一对key和value对象,key对象不能重复,但value对象可以重复。

java集合框架由来

此文章是根据网上小马哥视频总结。

谢谢阅读!