zoukankan      html  css  js  c++  java
  • Vector和ArrayList的区别联系,Hashtable和HashMap的区别联系

    Vector、Hashtable是早期的集合类,线程安全,但是效率低下,被相同原理、结构的ArrayList、HashMap取代。

    1、Vector和ArrayList的区别和联系:

    联系:实现原理相同,功能相同,都是长度可变的数组,很多情况下可以互用

    两者的主要区别如下:

    1)Vector是早期的JDK接口,ArrayList是替代Vector的新街口

    2)Vector线程安全,ArrayList线程不安全,但速度快

    3)扩容时Vector默认增长一倍,ArrayList增长50%

    2、Hashtable和HashMap的联系和区别:

    联系:实现原理相同,功能相同,底层都是哈希表结构,查询速度快,在很多情况下可以互用

    两者的主要区别如下:

    1)Hashtable是早期的JDK提供的接口,HashMap是新版的JDK提供的接口

    2)Hashtable继承Dictionary类,HashMap实现Map接口

    3)Hashtable线程安全,HashMap线程非安全

    4)Hashtable的键和值都不允许null,HashMap允许均为null值

    综上所述,在实际开发中,Vector、Hashtable使用越来越少;现在更多的是多并发的集合类,即第三代集合类:ConCurrentHashMap、CopyOnWriterArrayList和CopyOnWriterArraySet。用法与第二代集合类相同,实现原理有所不同。

  • 相关阅读:
    java虚拟机学习-JVM调优总结-基本垃圾回收算法(7)
    学习笔记-人脸识别第三讲
    小波变换基础理论
    小波变换图像分解
    图像的纹理区域分类
    matlab中图片数据类型转换uint8与double
    八板体-器乐曲
    【歌词】金蛇狂舞-许笑薇-童声
    【歌词】金蛇狂舞-龙飘飘
    NLM算法
  • 原文地址:https://www.cnblogs.com/sinoaccer/p/12088801.html
Copyright © 2011-2022 走看看