【Java类集】_认识类集、Collection接口笔记

本文详细介绍了Java类集框架的基本概念、主要接口及其继承关系。包括Collection、List、Set等接口的特点与用法,以及它们如何帮助开发者高效地管理对象集合。
 

【Java类集】_认识类集、Collection接口笔记

分类: Java
【Java类集】_认识类集、Collection接口笔记

3、具体内容

类集作用

类集实际上就是一个动态的对象数组,与一般的对象数组不同,类集的对象内容可以任意扩充。

类集的特征:
1.这种框架是高性能的
2.框架必须允许不同类型的类集以相同的方式和高度互操作方式工作
3.类集必须是容易扩展和修改的

对象数组中包含一组对象,但对象数组使用的时候存在一个长度限制,那么类集是专门解决这种限制的,使用类集可以方便的向数组增加任意多个数据。
对象数组的操作中基本上都要保证对象类型的一致性,对于类集而言本身其内部的元素也应该保持一致,不管是何种类型的数据,所有的操作方式都应该是一样的。

类集框架主要接口

No.    接口        描述
1    Collection    是存放一组单值的最大接口,所谓的单值是指集合中的每个元素都是一个对象,一般会很少直接使用此接口直接操作。
2    List        是Collection接口的子接口,也是最常用的接口,此接口对Collection进行了大量的扩充,里面的内容是允许重复的。
3    Set        是Collection接口的子接口,没有对Collection接口进行扩充,里面不允许存放重复内容。
4    Map        Map是存放一对值的最大接口,即,接口中的每个元素都是一对,以key->value的形式保存。
5    Iterator    集合的输出接口,用于输出集合中的内容,只能进行从前到后的单向输出。
6    ListIterator    是Iterator的子接口,可以进行双向输出。
7    Enumeration    是最早的输出接口,用于输出集合中指定的内容。
8    SortedSet    单值的排序接口,实现此接口的集合类,里面的内容是可以排序的,使用比较器进行排序。
9    SortedMap    存放一对值的排序接口,实现此接口的集合类,里面的内容按照key排序,使用比较器排序。
10    Queue        队列接口,此接口的子类可以实现队列操作(FIFO, First-In-First-Out)
11    Map.Entry    Map.Entry的内部接口,每个Map.Entry对象都保存着一对key->value的内容,每个Map接口中都保存多个Map.Entry接口实例。

以上的接口必须全部掌握,并且掌握各个接口的主要特点。

接口的继承关系

Collection接口:

Collection
List    Set    Queue    SortedSet

Map接口:

Map
SortedMap


Collection接口的定义

Collection是保存单值集合的最大父接口。
Collection接口定义:
    public interface Collection<E> extends Iterable<E>

JDK1.5之后为Collection接口增加了泛型声明

所有的类集操作都存放在java.util包中。

Collection接口的方法定义。

No.    方法                        类型        描述
1    public boolean add(E o)                普通        向集合中插入对象
2    public boolean addAll(Collection<? extend E?> c)普通        将一个集合的内容插入进来    
3    public void clear()                普通        清楚此集合中的所有元素
4    public boolean contains(Object    o)        普通        判断某一个对象是否在集合中存在
5    public boolean containsAll(Collection<?> c)    普通        判断一组对象是否在集合中存在
6    public boolean equals(Object o)            普通        对象比较
7    public int hashCode()                普通        哈希码
8    public boolean    isEmpty()            普通        集合是否为空
9    public Iterator<E> iterator()            普通        为Iterator接口实例化
10    public boolean remove(Object o)            普通        删除指定对象
11    public boolean removeAll(Collection<?> c)    普通        删除一组对象
12    public boolean retainAll(Collection<?> c)    普通        保存指定内容
13    public int size()                普通        求出集合的大小
14    public Object[] toArray()            普通        将一个集合变为对象数组
15    public <T> T[] toArray(T[] a)            普通        指定好返回的对象数组类型


Collection在EJB    2.x中大量使用了Collection接口,但是随着发展,sun公司开始将这些标准逐步的规范化,所以在sun一个开源————宠物商店,基本上就不再直接使用Collection,而使用List或Set,这样来说可以更加清楚的表示出操作的类型。

Collection子接口的定义

Collection接口虽然是集合的最大接口,但是如果直接使用Collection接口进行操作的话,则表示的操作意义不明确,所以在java开发中已经不提倡直接使用Collection接口了,主要的以子接口下:

List接口:可以存放重复内容
Set接口:不能存放重复内容,所有重复内容靠hashCode()和equals()两个方法区分的。
SortedSet接口:可以对集合中的数据进行排序
Queue列队接口(FIFO):堆栈列队
内容概要:本文系统介绍了算术优化算法(AOA)的基本原理、核心思想及Python实现方法,并通过图像分割的实际案例展示了其应用价值。AOA是一种基于种群的元启发式算法,其核心思想来源于四则运算,利用乘除运算进行全局勘探,加减运算进行局部开发,通过数学优化器加速函数(MOA)数学优化概率(MOP)动态控制搜索过程,在全局探索与局部开发之间实现平衡。文章详细解析了算法的初始化、勘探与开发阶段的更新策略,并提供了完整的Python代码实现,结合Rastrigin函数进行测试验证。进一步地,以Flask框架搭建前后端分离系统,将AOA应用于图像分割任务,展示了其在实际工程中的可行性与高效性。最后,通过收敛速度、寻优精度等指标评估算法性能,并提出自适应参数调整、模型优化并行计算等改进策略。; 适合人群:具备一定Python编程基础优化算法基础知识的高校学生、科研人员及工程技术人员,尤其适合从事人工智能、图像处理、智能优化等领域的从业者;; 使用场景及目标:①理解元启发式算法的设计思想与实现机制;②掌握AOA在函数优化、图像分割等实际问题中的建模与求解方法;③学习如何将优化算法成到Web系统中实现工程化应用;④为算法性能评估与改进提供实践参考; 阅读建议:建议读者结合代码逐行调试,深入理解算法流程中MOA与MOP的作用机制,尝试在不同测试函数上运行算法以观察性能差异,并可进一步扩展图像分割模块,引入更复杂的预处理或后处理技术以提升分割效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值