集合的由来:
存储多个对象需要容器类型的变量来存储,数组和StringBuffer是容器类型,但是,StringBuffer只能存储字符串,不能满足需求,而数组的长度是固定的,不能适应变化的 需求,为了适应这种需求,java为我们提供了集合类。
集合和数组的区别:
1、长度区别:
数组是固定长度的
集合是可变长度的
2、内容区别:
数组存储的是同一种数据类型
集合存储的是对象,可以是不同类型的对象
3、元素的数据类型问题:
数组既可以存储基本数据类型,也能存储引用类型
集合只能存储引用类型
集合的继承体系结构:
集合是用来存储多个元素的,但是存储多个元素也是有不同需求的,比如要求元素不能重复,比如要求排序。针对不同需求,java提供了不同的集合类。这多个集合类的数据结构不同,结构不同不重要,重要的是要能够存储东西,并且还有能使用这些东西,如增删查改等。既然这样,那么这些集合类是由共性的,我们把这些共性不断向上提取,最终就能形成集合的继承体系结构,如下图:
上述类图中,实线边框的是实现类,比如ArrayList,LinkedList,HashMap等,折线边框的是抽象类,比如AbstractCollection,AbstractList,AbstractMap等,而点线边框的是接口,比如Collection,Iterator,List等。
时间: 2024-12-13 16:55:26