我们先通过一张思维导图认识一下集合的框架构成,方便理解和记忆。
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按照插入的顺序存储集合