没有合适的资源?快使用搜索试试~ 我知道了~
首页Java中List、ArrayList、Vector及map、HashTable、HashMap分别的区别.
Java中List、ArrayList、Vector及map、HashTable、HashMap分别的区别.

Java中List、ArrayList、Vector及map、HashTable、HashMap分别的区别.
资源详情
资源评论
资源推荐

Java 容器类 List、ArrayList、Vector 及 map、HashTable、HashMap 分别的区别.
一、List 与 ArrayList 的区别
List->AbstractList->ArrayList
(1) List 是一个接口,ArrayList 是一个实现了 List 接口的具体类。
他们是父子关系,我们常用的是 ArrayList,但常用 List 的引用去操作 ArrayList
这是一个简单的面向接口编程的一种,如:List myList = new ArrayList();
(2)他们主要是用来保存对象的集合
(3)要取出它里面保存的对象可以用下标,如:Object aaa = myList.get(0);
这样我们就把保存在 myList 里的第一个对象取出来给了 aaa 啦。
二、祥解
好像 List 和 Map 都是接口
不能实例化的
以前这么写 List list = new Vector();
现在这么写 List list = new ArrayList();
用 ArrayList 代替了 Vector 因为前者的性能比后者好;
但是两个都是实现了 List 借口的
同理 Map map = new HashTable();(以前)
Map map = new HashMap();(现在)
ArrayList 和 HashMap 是 异 步 的 , Vector 和 HashTable 是 同 步 的 , 所 以 Vector 和
HashTable 是线程安全的,而 ArrayList 和 HashMap 并不是线程安全的。因为同步需要花费
机器时间,所以 Vector 和 HashTable 的执行效率要低于 ArrayList 和 HashMap。
Collection
├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
Map
├Hashtable
├HashMap
└WeakHashMap
List 接口
List 是有序的 Collection,使用此接口能够精确的控制每个元素插入的位置。用户能够
使用索引(元素在 List 中的位置,类似于数组下标)来访问 List 中的元素,这类似于 Java
的数组。
和下面要提到的 Set 不同,List 允许有相同的元素。
除了具有 Collection 接口必备的 iterator()方法外,List 还提供一个 listIterator()方法,返
回一个 ListIterator 接口,和标准的 Iterator 接口相比,ListIterator 多了一些 add()之类的方法,
允许添加,删除,设定元素,还能向前或向后遍历。
实现 List 接口的常用类有 LinkedList,ArrayList,Vector 和 Stack。

















安全验证
文档复制为VIP权益,开通VIP直接复制

评论15