1.为什么需要集合
Java是面向对象的编程语言,所以处理对象是它必须要完成的将,多个对象储存起来,有利于对多个对象进行操作,在储存多个变量的同时,很容易想到容器,常见的容器有StringBuffered,数组。所以Java提供的集合就派上了用场。
2.数组和集合的区别
数组:长度固定,可以储存基本数据类型,也可以储存引用类型。
集合:长度可变,集合只能储存引用类型。
3.集合的由来和功能
由来:集合可以储存多个元素,但是我们对多个元素有不相同的需求,它不能相同且可以按照某个规则排序。所以因为需求的不同,Java就提供了许多的集合类,每个集合类的数据结构都不相同,但是最重要的是能够存储东西,可以判断,或许,这才是关键。将集合共性的内容不断往上提取,最终形成集合的继承体系。
可以看到Collection的源代码中继承了Iterable,有iterator()这个方法
点击进入后,可以明显到的看到Iterable是一个接口:
它有iterator()这个方法,返回的是Iterator
它基本有三个方法:hasNext()、next()、remove()
但是,对应的实现方法仍然没有找到,只能往Collection的子类下继续寻找了,然后就在ArrayList下找到了如何让iterator实现的办法,实在ArrayList以内部类的方式实现。并且我们通过源代码可以得到:Iterator实际上就是在遍历集合。
所以综上所铸,遍历集合的元素都可以使用terator,它的实现是以内部类的方式实现。
从前文说过,Collection主要学习的集合类型分别是:Set和List,这里主要讲解List。
这里简单说一下List接口的方法,比Collection多一些。
List特点:有序,可以重复
Collection返回的是Iterator迭代器的接口,而List中Listlterator接口可以对应实现。Listlterator可以往前遍历,添加元素,设置元素。
List集合常用子类
1.ArrayList 数组是底层的数据结构,线程较为不安全
2.LinkedList 底层数据结构是链表,线程较为不安全
3.Vector 数组为底层数据结构,线程安全
方法相比于Collection少一些,Set的特点为元素不可重复。
Set集合常用子集
HashSet集合,底层数据的结构是一个元素为链表的数组
TreeSet集合,底层数据是一个自然平衡的二叉树;保证元素排列方式
LinkedHashSet集合,底层数据结构由以上两者组成
金盾金安指纹锁全国服务热线:400-883-2086在当今社会,随着科技的发展和人们生活水平的提升,个人财产的安全已经成为了一个不容忽视的问题。而金盾金安指纹锁作为一种重要的安全防护工具,其安全性、可靠性成为了消费者选择的重要依据。今天,我们就来了解一下金盾金安指纹锁,看看这款产品是如何在众
2025-05-04 06:49:05尊敬的用户,感谢您选择奥帅集成燃气灶。在您使用过程中,如遇到问题,请随时联系我们。售后服务热线:400-883-2086(参考使用说明书),我们将24小时为您提供服务。以下为奥帅集成燃气灶常见故障及维修方法,希望能为您提供帮助。奥帅集成燃气灶全国统一服务号码-全国服务热线实时反馈-今-日-资-讯
2025-05-04 06:48:13约克集成灶客服电话为:400-883-2086 约克集成灶作为国内知名门锁品牌之一,一直以来都致力于为消费者提供高品质的产品和优质的服务。作为约克集成灶的核心部分,门锁客服团队是一个不可或缺的存在。无论您是在购买前需要咨询产品信息,还是在使用过程中需要解决问题,约克集成灶客服团队都会尽心尽
2025-05-04 06:44:44我们了解,每一个家庭的德圣科迪壁挂炉热水器都是守护健康的重要伙伴,因此,我们的使命就是确保这些伙伴始终处于最佳状态。德圣科迪壁挂炉热水器售后客服电话:400-883-2086德圣科迪壁挂炉热水器由一群经验丰富的专业技术人才组成,他们对德圣科迪壁挂炉热水器的内部构造了如指掌,无论是日常
2025-05-04 06:39:42凯泽优尼卡燃气灶售后服务电话:400-883-2086随着社会的进步和经济的发展,人们的财产安全意识逐渐增强。作为保护贵重物品和重要文件的设备,越来越多地走进了家庭和企业。在长期使用过程中,可能会出现各种问题,这时就需要专业的维修服务。凯泽优尼卡燃气灶维修服务电话提供了便捷和高效的解决方案,确保
2025-05-04 06:39:05