1.ArrayList、linkedList、Vector区别
ArrayList、linkedList、Vector他们都是集合都实现了List的接口(List接口继承了Collection接口)
区别:
ArrayList 和Vector是以数组方式存储数据的
linkedList是以链表的方式实现的(数据更新快,如修改和删除)
ArrayList 的线程不安全,效率会高
Vector的线程安全,效率会低
linkedList 的线程不安全,效率会高
2.set、list、Map的区别
区别:
List与Set具有相似性,它们都是单列元素的集合,它们有一个功共同的父接口,叫Collection。
map是双列的集合
list:存储:有序的 可重复的
访问:可以for循环,foreach循环,iterator迭代器 迭代。
set:存储:无序的 不重复的
访问:可以foreach循环,iterator迭代器 迭代
map:存储:存储的是一对一对的映射 ”key=value“,key值 是无序,不重复的。value值可重复
3、Hashset、Hashtable和HashMap的区别
Hashset是set接口的一个实现类(数据不可重复)
Hashtable是Dictionary的子类。(线程安全,数据不允许为空)
HashMap是Map接口的一个实现类(线程不安全,数据允许为空)
Hashtable 和HashMap是以键值队的方式存在的