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。用法与第二代集合类相同,实现原理有所不同。

  • 相关阅读:
    tfidf 问题
    Win32汇编窗口程序设计[03]第一个窗口程序
    Win32汇编窗口程序设计[01]开发环境的搭建
    Win32汇编窗口程序设计[02]RadASM简介
    寄存器引用结构体变量
    始终居中的弹出层
    JSonJavaScript
    json
    <收录>jqueryuidatapicker生成的页面html
    网站数据抓取
  • 原文地址:https://www.cnblogs.com/sinoaccer/p/12088801.html
Copyright © 2011-2022 走看看