对于集合的自我总结!!!!!!!

本文深入探讨了Java中Iterator与Collection的remove()方法的区别,分析了它们在性能与容错方面的表现。同时,对比了ArrayList与LinkedList在不同场景下的适用性,并介绍了Array的基本概念与转换方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述
由上图可以看出Iterable是Collection集合的爸爸,是其他继承了Collection集合的爷爷!
1,在这里小编只想和大家说一下Iterator和Collection它们remove()方法的区别!
性能方面:
(1)Collection的remove(object)它带参数可以删除集合中的某一项
它要找到这一项的位置要通过单链表结构查询,单链表结构的效率较低,要一个一个遍历才能找到这个对象。

                            (2)Iterator的remove() 它在有下一项(next)的时候去才去执行
                                           Iterator的remove()方法它结合了next()方法
                                           在出现下一项的时候去执行删除!
             容错方面:
             在使用iterator遍历时,如果使用Collection的remove则会出现异常(ConcurrentModificationException),因为集合中的对象的个数会改变而iterator内部对象的个数不会,不一致则会出现异常!
             而iterator的remove不会报错因为iterator内部的对象个数和集合中的对象的个数会保持一致

ArrayList 和LinkedList
ArrayList (数组结构):get和set调用花销小,查询的速度快,一般用于查询
LinkedList (链表结构) :get和set调用花销大,不适合用作于查询,可以用作于删除,修改,新增

Array是java中的数组:
int[] a= new int[10]
int a[] a = new int[10]
int a[] a ={1,2,3}

数组中存放的元素和个数固定并且类型一样!

Array转list,可以使用Array.asList

list 转Array,可以使用list.ToArray

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值