龙空技术网

Java学习(八) : 集合介绍

颠倒人间 15

前言:

而今看官们对“前端集合和数组的区别和联系”大概比较重视,我们都想要学习一些“前端集合和数组的区别和联系”的相关资讯。那么小编也在网上网罗了一些有关“前端集合和数组的区别和联系””的相关资讯,希望大家能喜欢,看官们快快来了解一下吧!

1.集合的作用

为了保存数量不确定的数据,以及保存具有映射关系的数据(也被称为关联数组),Java提供了集合类。集合类主要负责保存、盛装其他数据,因此集合类也被称为容器类。所有的集合类都位于java.util包下,后来为了处理多线程环境下的并发安全问题,Java 5还在java.util.concurrent包下提供了一些多线程支持的集合类。

2.集合分类

Java集合大致可分为Set、List和Map三种体系,

Set: 代表无序、不可重复的集合;List: 代表有序、重复的集合;而Map: 代表具有映射关系的集合。Queue: 从Java 5以后,Java又增加了Queue体系集合,代表一种队列集合实现3.集合和数组的区别

集合类和数组不一样,数组元素既可以是基本类型的值,也可以是对象(实际上保存的是对象的引用变量);而集合里只能保存对象(实际上只是保存对象的引用变量,但通常习惯上认为集合里保存的是对象)。

1. 存储元素角度:

数组: 可以保存基本类型的值和是对象。集合: 只能保存对象。

数组和集合中保存对象,实际上只是保存对象的引用变量

2. 长度角度: 数组的长度是固定的,集合的长度是可变的。

4.集合分类的关系

Java的集合类主要由两个接口派生而出:Collection和Map,Collection和Map是Java集合框架的根接口,这两个接口又包含了一些子接口或实现类。

Collection接口、子接口及其实现类的继承树

粗线圈出的Set和List接口是Collection接口派生的两个子接口,它们分别代表了无序集合和有序集合;Queue是Java提供的队列实现,有点类似于List

Map接口、子接口及其实现类的继承树

5.集合存储

我们可以把Java的所有集合分成三大类,

Set集合类似于一个罐子,把一个对象添加到Set集合时,Set集合无法记住添加这个元素的顺序,所以Set里的元素不能重复(否则系统无法准确识别这个元素);List集合非常像一个数组,它可以记住每次添加元素的顺序,只是List的长度可变。Map集合也像一个罐子,只是它里面的每项数据都由两个值组成。

三种集合示意图:

6.集合读取List集合中的元素,可以直接根据元素的索引来访问;Map集合中的元素,可以根据每项元素的key来访问其value;Set集合中的元素,可以根据元素本身来访问(这也是Set集合里元素不允许重复的原因)7.常用集合继承关系

标签: #前端集合和数组的区别和联系