美文网首页
HashMap和Hashtable的区别

HashMap和Hashtable的区别

作者: reco171 | 来源:发表于2019-02-18 11:22 被阅读0次

    HashMap和Hashtable(ConcurrentHashMap)的区别

    1. HashMap是非synchronized,而Hashtable是synchronized,所以HashMap线程安全的。java5,ConcurrentHashMap代替HashTable
    2. 迭代器不同
      HashMap的迭代器(Iterator)是fail-fast迭代器,同样也是Enumeration和Iterator的区别。主要区别:
      (1) java中的集合类都提供了返回Iterator的方法,就是迭代器,它和Enumeration的主要区别其实就是Iterator可以删除元素,但是Enumration却不能。
      (2)还有一点要注意的就是,使用Iterator来遍历集合时,应使用Iterator的remove()方法来删除集合中的元素,使用集合的remove()方法将抛出ConncurrentModificationException异常。
      Enumeration已经不是主流,Iterator是它的下一代替代品
      参考:
      HashMap和Hashtable的区别
      Enumeration和Iterator的区别

    相关文章

      网友评论

          本文标题:HashMap和Hashtable的区别

          本文链接:https://www.haomeiwen.com/subject/jezoeqtx.html