zoukankan      html  css  js  c++  java
  • Java常用容器对比

    ArrayList与Vector

    ArrayList和Vector内部都是由数组实现的,数组实现的优点就是支持元素的随机访问(O(1)),但是在对元素进行插入和删除操作时,需要向后或向前移动数组,这样导致插入和删除的效率将会降低(O(n));

    ArrayList的默认容量是10,扩容为原来的1.5倍;

    Vector的默认容量也是10,可以在创建是指定容量。扩容为原来的2倍;

    ArrayList与Vector最大的区别在于Vector是线程安全的,这也导致Vextor的效率要远低于ArrayList;

    ArrayList与LinkedList

    LinkedList内部采用的是链表实现,所以相比于ArrayList,LinkedList在插入和删除操作时速度很快,但是在随机访问时需要遍历整个链表(时间复杂度是O(n));

    HashMap与HashTable

    jdk1.8 HashMap详解

                               HashMap                  HashTable

    线程安全                 否         是

    初始容量                 16                                11

    性能                         好                               不好

    扩容                       2倍                               2倍+1

    空值                      允许(null,null)              不允许null

    HashSet

    HashSet内部实现是HashMap,只不过value为null。

  • 相关阅读:
    css做导航
    css和div
    表格技巧
    HTML表单
    ASP.NET MVC 中的强类型控件
    Aspose.Cells导入与导出excel
    webpack 入门
    asp.net my sqlHelper
    visual studio下用mysql数据库建EF遇到的问题及解决方法
    asp.net mvc 无刷新高效分页
  • 原文地址:https://www.cnblogs.com/duodushuduokanbao/p/9628847.html
Copyright © 2011-2022 走看看