实现List接口的常用类有LinkedList,ArrayList,Vector和Stack。
1. ArrayList实现了可变大小的数组。它允许所有元素,包括null。ArrayList没有同步。
2. LinkedList实现了List接口,允许null元素。此外LinkedList提供额外的get,remove,insert方法在LinkedList的首部或尾部。这些操作使LinkedList可被用作堆栈(stack),队列(queue)或双向队列(deque)。
注意LinkedList没有同步方法。如果多个线程同时访问一个List,则必须自己实现访问同步。一种解决方法是在创建List时构造一个同步的List:
List list = Collections.synchronizedList(new LinkedList(…));
3. Vector非常类似ArrayList,但是Vector是同步的。
4.Hashtable是同步的。
HashMap类和Hashtable类似,
1. ArrayList 和 LinkedList 的区别
ArrayList 是 List 接口的一种实现,它是使用数组来实现的。
LinkedList 是 List 接口的一种实现,它是使用链表来实现的。
ArrayList 遍历和查找元素比较快。LinkedList 遍历和查找元素比较慢。
ArrayList 添加、删除元素比较慢。LinkedList 添加、删除元素比较快。
java集合及问题ArrayList 和 LinkedList 的区别
最新推荐文章于 2022-06-29 11:08:13 发布