目录
为什么要有集合?
在Java中,集合(Collection
)是用于存储和操作一组对象的数据结构,类似于数组,但具有更多灵活性和功能。Java提供了集合框架(Java Collections Framework, JCF),它包括接口、实现类和算法,来处理动态大小的数据集。使用集合的原因有以下几个方面:
1. 动态大小
- 数组的局限性:数组大小固定,一旦创建就不能调整。如果数据量不可预测,使用数组可能会造成空间浪费或内存不足的问题。
- 集合的优势:集合可以根据需求动态调整大小,例如
ArrayList
,它会在需要时自动扩展或缩小。
2. 多样性的数据结构
- 数组只能存储线性数据:数组适合存储一维或多维的线性数据,但如果需要更复杂的数据结构(如列表、队列、栈、集合、图、树等),数组就不太合适了。
- 丰富的集合类型:Java集合框架提供了不同类型的集合类,如
List
、Set
、Queue
和Map
,它们适用于不同的应用场景:List
:用于有序的元素集合,可以包含重复元素(如ArrayList
、LinkedList
)。Set
:用于不允许重复的元素集合(如HashSet
、TreeSet
)。Queue
:用于按顺序处理元素的集合,通常用于实现队列(如PriorityQueue
)。Map
:用于存储键值对的集合(如HashMap
、TreeMap
)。
集合存储数据类型的特点
集合不能直接存基本数据类型,如果一定要存,需要转换成对应的包装类才行:
集合和数组的对比
集合介绍
在java中,规定了很多种集合,每一种集合都有其各自的特点,现在先来学习以后用的最多的集合-ArrayList:
集合的创建
ArrayList成员方法
ArratList集合也有索引,它的索引规则跟数组的索引规则是一样的,都是从0开始,逐一增长。
遍历集合可以使用list.fori,然后回车。其中list是一个集合对象。