zoukankan      html  css  js  c++  java
  • Vector、ArrayList和LinkedList的异同

    Vector、ArrayList和LinkedList的异同

        Vector、ArrayList、LinkedList都是List集合的实现类,那他们到底有什么不同呢?

        从底层结构上来看:

          Vector、ArrayList的底层是数组,在执行增加和删除操作时,后面的元素要逐个移动;

          而LinkedList底层是双向链表,在执行增加和删除操作时,是由指针直接操作,效率更高

          因此,ArrayList更多用于查询,而LinkedList更多用于删除、添加

        在线程安全上:

          ArrayListLinkedList不是线程安全的。而Vector线程安全

        初始容量上:

          ArrayList初始容量是10,且按1.5倍扩容;Vector初始容量也是10,但按2倍扩容;LinkedList由于底层的双向链表结构,不存在初始容量和扩容的说法

        从访问方法上来看:

          由于ArrayList是基于数组的,所以可以通过索引值的方式来定位元素的位置

          而LinkedList只能通过指针慢慢查找

        

  • 相关阅读:
    Django-中间件
    Django-cookie与session
    Django-用户认证组件
    Django-forms组件
    Django-forms校验
    Django-ajax上传文件(request数据都可以在,request.body中找到)
    Django-Ajax传递json数据
    form表单文件上传
    Django-ROM(字段,参数)
    Django-模板的继承(母版,include)
  • 原文地址:https://www.cnblogs.com/javaisbest/p/11795444.html
Copyright © 2011-2022 走看看