java集合及问题ArrayList 和 LinkedList 的区别java集合及问题ArrayList 和 LinkedList 的区别

实现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 添加、删除元素比较快。

相关文章:

  • 2021-11-30
  • 2021-09-28
  • 2021-11-27
  • 2022-12-23
  • 2022-01-17
  • 2021-09-08
  • 2021-12-09
猜你喜欢
  • 2021-11-13
  • 2021-11-25
  • 2022-01-23
  • 2021-05-18
  • 2022-01-19
  • 2021-09-26
  • 2021-04-14
相关资源
相似解决方案