zoukankan      html  css  js  c++  java
  • 数据结构

    1.哈希表:若关键字为k,则其值存放在f(k)的存储位置上。由此,不需比较便可直接取得所查记录。称这个对应关系f为散列函数,按这个思想建立的表为散列表,也叫哈希表;

               HashMap:底层是哈希表是一个数组 ,每个数组的位置上对应一个链表,是数组和链表的结合;http://www.importnew.com/16301.html;

        1):HashMap实现了Serializable接口,因此它支持序列化,实现了Cloneable接口,能被克隆。线程不安全的;

        2):String 作为key 会导致  hash值重复概率增加。

    2.hashtable:Hashtable 的函数都是同步的,这意味着它是线程安全的。它的key、value都不可以为null。

          1)集成Dictionary字典类;

    3.Hashtable和HashMap到底有哪些不同呢

    (1)基类不同:HashTable基于Dictionary类,而HashMap是基于AbstractMap。Dictionary是什么?它是任何可将键映射到相应值的类的抽象父类,而AbstractMap是基于Map接口的骨干实现,它以最大限度地减少实现此接口所需的工作。

    (2)null不同:HashMap可以允许存在一个为null的key和任意个为null的value,但是HashTable中的key和value都不允许为null。

    (3)线程安全:HashMap时单线程安全的,Hashtable是多线程安全的。

    (4)遍历不同:HashMap仅支持Iterator的遍历方式,Hashtable支持Iterator和Enumeration两种遍历方式。

        

  • 相关阅读:
    几种典型程序Button处理代码的定位转
    sql server索引使用效率评估
    sql server查询死锁的sql语句
    SqlServer 查询计划
    批量删除Word中的回车符号
    数据在机器中的表示
    win32汇编窗口程序设计[05]获取屏幕分辨率
    清理win7任务栏图标
    Win32汇编窗口程序设计[06]—“Hello Win32ASM”改进版
    关于ASCII码的几点小结
  • 原文地址:https://www.cnblogs.com/xxwn/p/8545260.html
Copyright © 2011-2022 走看看