Java 集合(Collection)笔记

前言

是学习java3y先生整理的资料所记录的笔记

集合

该如何去理解集合?这几个常用的实现类我们必须要知道它的数据结构是什么,什么时候来使用?

从面向对象的角度去理解
分为Collection接口, Map接口

Collection接口:
	List:
		Vector
		LinkedList
		ArrayList
		CopyOnwriteArrayList
	Set:
		HashSet
		TreeSet
Map接口:
		HashMap
		LinkedHashMap
		TreeMap
		ConcurrentHashMap

需要了解的数据结构有
数组,链表,散列表,红黑树

•	如果是集合类型,有List和Set供我们选择。List的特点是插入有序的,元素是可重复的。
Set的特点是插入无序的,元素不可重复的。至于选择哪个实现类来作为我们的存储容器,我们就得看具体的应用场景。
是希望可重复的就得用List,选择List下常见的子类。是希望不可重复,选择Set下常见的子类。
•	如果是Key-Value型,那我们会选择Map。如果要保持插入顺序的,我们可以选择LinkedHashMap,
如果不需要则选择HashMap,如果要排序则选择TreeMap。

Collection的由来与功能和要掌握的体系有哪些?

集合可以存储多个元素,但我们对多个元素也有不同的需求
	多个元素,不能有相同的
	多个元素,能够按照某个规则排序
针对不同的需求:java就提供了很多集合类,多个集合类的数据结构不同。但是,结构不重要,重
要的是能够存储东⻄,能够判断,获取
把集合共性的内容不断往上提取,最终形成集合的继承体系---->Collection

在这里插入图片描述
所以需要先从Collection学起

Collection的功能有哪些?

在这里插入图片描述

迭代器(Iterator)是什么?

查看Collection源码时会发现Collection继承了Iterable,有iterator()这个⽅法

Iterable是一个接口,有三种方法

hasNext()
next()
remove()

但没有在这个接口实现.

在ArrayList下以内部类的方式实现了,Iterator实际上就是在遍历集合
所以便利集合(Collection)的元素都可以使用Iterator,至于它的具体实现是以内部类的方式实现的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值