真谛百科 手机版
首页 > 常识 >

collection是什么意思呢(集合Collection到底是什么)

100次浏览     发布时间:2024-10-10 08:22:11    


一、集合(Collection)介绍

1.为什么需要集合

Java是面向对象的编程语言,所以处理对象是它必须要完成的将,多个对象储存起来,有利于对多个对象进行操作,在储存多个变量的同时,很容易想到容器,常见的容器有StringBuffered,数组。所以Java提供的集合就派上了用场。

2.数组和集合的区别

数组:长度固定,可以储存基本数据类型,也可以储存引用类型。

集合:长度可变,集合只能储存引用类型。

3.集合的由来和功能

由来:集合可以储存多个元素,但是我们对多个元素有不相同的需求,它不能相同且可以按照某个规则排序。所以因为需求的不同,Java就提供了许多的集合类,每个集合类的数据结构都不相同,但是最重要的是能够存储东西,可以判断,或许,这才是关键。将集合共性的内容不断往上提取,最终形成集合的继承体系。

二、迭代器(Iterator)的介绍

可以看到Collection的源代码中继承了Iterable,有iterator()这个方法

点击进入后,可以明显到的看到Iterable是一个接口:

它有iterator()这个方法,返回的是Iterator

它基本有三个方法:hasNext()、next()、remove()

但是,对应的实现方法仍然没有找到,只能往Collection的子类下继续寻找了,然后就在ArrayList下找到了如何让iterator实现的办法,实在ArrayList以内部类的方式实现。并且我们通过源代码可以得到:Iterator实际上就是在遍历集合。

所以综上所铸,遍历集合的元素都可以使用terator,它的实现是以内部类的方式实现。

三、List集合介绍

从前文说过,Collection主要学习的集合类型分别是:Set和List,这里主要讲解List。

这里简单说一下List接口的方法,比Collection多一些。

List特点:有序,可以重复

Collection返回的是Iterator迭代器的接口,而List中Listlterator接口可以对应实现。Listlterator可以往前遍历,添加元素,设置元素。

List集合常用子类

1.ArrayList 数组是底层的数据结构,线程较为不安全

2.LinkedList 底层数据结构是链表,线程较为不安全

3.Vector 数组为底层数据结构,线程安全

四、Set集合介绍

方法相比于Collection少一些,Set的特点为元素不可重复。

Set集合常用子集

HashSet集合,底层数据的结构是一个元素为链表的数组

TreeSet集合,底层数据是一个自然平衡的二叉树;保证元素排列方式

LinkedHashSet集合,底层数据结构由以上两者组成


热门文章

最新文章