《Java集合》面试宝典大全个人见解

本文解析了Java集合框架中ArrayList、LinkedList等不同数据结构的特点,并对比了它们之间的差异,同时介绍了HashSet、TreeSet及LinkedHashSet的使用场景。

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

我们先通过一张思维导图认识一下集合的框架构成,方便理解和记忆。
在这里插入图片描述

1:ArrayList和LinkList的区别
ArrayList(数据结构):它的优点源于查询速度快,缺点就是添加删除的速度慢

LinkList(链表结构):优点即添加和删除的速度快,缺点不适合用于查询

2:Collection接口的remove()方法和Iterator接口的remove()方法区别?·
区别分别两大(性能方面,容错方面)

性能方面:Collection的remove的查询是单链表结构查询。所以它的查询效率低,因为需要从集合一个一个去遍历才能找到对象
对比Iterator的remove方法是相反的,因为它是每隔一项删除一项大大的提高了效率

容错方面:
如果Iterator使用遍历的时候去使用Collection的remove方法的会报错,
在使用Iterator遍历是不会发生

3:Array和ArrayList的区别?

其实简单来说就是
ArrayList是Array的复杂版本,Array只能储存相同的数据类型。而ArrayList可以储存不同的数据类型
ArrayList的长度是可以改变的Array是固定的。

4:HashSet,TreeSet,LinkedHashSet区别?
用简单的集合使用来说把:
1,如果需要使用速度的快的集合的话,使用HashSet
2,TreeSet用于有序的集合
3,LinkedHashSet按照插入的顺序存储集合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值