1.Java 集合体系结构(List、Set、Collection、Map 的区别
1)Collection
接口存储一组不唯一,无序的对象
2)List
接口存储一组不唯一,有序(插入顺序)的对象
3)Set
接口存储一组唯一,无序的对象
4)Map
接口存储一组键值对象,提供
key
到
value
的映射。
Key
无序,唯
和联系)
2.Vector和ArrayList的区别和联系
相同点
1
)
实现原理相同
---
底层都使用数组
2
)
功能相同
---
实现增删改查等操作的方法相似
3
)
都是长度可变的数组结构,很多情况下可以互用
不同点:
1)Vector
线程安全,
ArrayList
重速度轻安全,线程非安全 长度需增长时,Vector
默认增长一倍,
ArrayList
增长
50%
3.ArrayList
和
LinkedList
的区别和联系
相同点:
两者都实现了
List
接口,都具有
List
中元素有序、不唯一的特点。
不同点:
1)ArrayList
实现了长度可变的数组,在内存中分配连续空间。遍历元素和随机访问元素的效率比较高;
2)l
inkedList
采用链表存储方式。插入、删除元素时效率比较高