java集合的介绍
2022/5/12 20:27:42
本文主要是介绍java集合的介绍,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.集合的主要体系
1.Collection集合及其实现类
1.概述:首先Collection是属于单列集合的顶层接口,表示为一组对象。其类型为引用数据类型,具体创建对象,通过多态的形式进行。
2.主要常用方法(E这种是指泛型类型,可以为任何引用类型):
1:添加功能
boolean add(Object obj):添加一个元素
boolean addAll(Collection c):添加一个集合的元素
2:删除功能
void clear():移除所有元素 boolean remove(Object o):移除一个元素
boolean removeAll(Collection c):移除一个集合的元素(是一个还是所有)
3:判断功能
boolean contains(Object o):判断集合中是否包含指定的元素
boolean containsAll(Collection c):判断集合中是否包含指定的集合元素(是一个还是所有)
boolean isEmpty():判断集合是否为空
4:获取功能
Iterator iterator()
5:长度功能
int size():元素的个数
6:交集功能
boolean retainAll(Collection c):两个集合都有的元素
7:把集合转换为数组
Object[] toArray() (引申:数组转集合)
3.Collection集合的遍历
1.Iterator迭代器
- Iterator<E> iterator():返回此集合中元素的迭代器,通过集合的iterator()方法得到
- 迭代器是通过集合的iterator()方法得到的,所以说迭代器是依赖于集合存在的
2.迭代器中常用方法 :
- E next() 返回迭代器中下一个元素
- boolean hasNext() 如果迭代器中还有 其他元素,返回true
2.List集合(List是带有索引的,所以多注意索引越界等问题)
1.概述:有序集合,且允许有重复的元素,使用者可以精确的控制每个元素的插入位置,并且可以快速访问。
特点:有序(存储与取出顺序一致),且元素可以重复。
2.常用方法:
1.添加元素
void add(int index,E element)
2.移除元素
E remove(int index) 根据索引移除集合中的对应的元素
3.修改元素
E set(int index,E element) 修改指定索引处元素,返回被修改的元素
4.得到元素
E get(int index) 得到该索引处的元素
3.List的列表迭代器(Listlterator)
用法:可以按照任意方向进行遍历,并在迭代期间修改列表,并获取列表中迭代器的位置,是list集合特有的迭代器。
常用方法:
- Iterator<E> iterator():返回此集合中元素的迭代器,通过集合的iterator()方法得到
- 迭代器是通过集合的iterator()方法得到的,所以说迭代器是依赖于集合存在的
- void add(E e) 将指定的元素插入列表
- 。。。等
当使用倒叙遍历时,是需要注意先进行一遍正向顺序;或者直接通过Collection工具类中的reverse()的方法进行倒叙,再输出。
4.并发修改异常(ConcurrentModificationException)
主要产生原因:通过内部类的形式,当通过hasNext()这个方法时,遍历集合中加以判断并添加时会发生并发异常,是因为list.add()会导致实际的修改集合和预期的修改集合不对等而触发并发 修改异常。
因为:当你使用list的add方法时候,只会添加实际修改集合的值,而预期的修改集合值不会增加,而hasNext()的使用是需要预期和实际进行判断的。
如何避免这种异常出现?
1.使用列表迭代器的方法进行添加,因为add不会导致实际与预期的不对等。
2.通过for循环进行遍历。
这篇关于java集合的介绍的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南