JavaSE 学习参考:HashMap和Hashtable的区别
2017-04-24 19:45
399 查看
Java Map容器是提供了键值对的存储管理,其中HashMap和Hashtable这两个类都使用哈希算法实现接口Map,功能上也相同,区别在于:
1) HashMap允许空(null)键值(key)而Hashtable不允许。
2) HashMap是非线程安全,Hashtable是线程安全的,Hashtable的方法都是Synchronize的,而HashMap不是,因此在多个线程环境下访问Hashtable时,不需要再实现方法同步,而HashMap 就必须为之提供同步实现。这里sychronized意味着在一次仅有一个线程能够更改Hashtable。就是说任何线程要更新Hashtable时要首先获得同步锁,其它线程要等到同步锁被释放之后才能再次获得同步锁更新Hashtable。从存储性能上讲HashMap优于Hashtable。
|
相关文章推荐
- JavaSE 学习参考:HashMap和Hashtable的区别
- Java学习之HashMap和Hashtable的区别
- Java学习之HashMap和Hashtable的区别
- javase 复习汇总二:hashtable和hashmap 的区别
- Java 深入学习(11) —— HashMap、HashTable、TreeMap 的区别
- HashMap和Hashtable的区别 ---学习笔记
- hashmap 与hashtable区别(学习工厂模式笔记)
- 【JAVA学习】——hashmap和hashtable的区别
- HashMap和Hashtable的区别 ---学习笔记
- Java基础知识学习总结(四)---Hashtable和HashMap的区别与联系分析
- JavaSE 学习参考:ArrayList和LinkedList区别
- Java 学习笔记 05 HashMap 和 Hashtable 区别与联系
- Java入门学习- 理解List和HashMap和HashTable的用法和区别
- JavaSE 学习参考:ArrayList和LinkedList区别
- 自学Java系列 笔记5 Java学习之HashMap和Hashtable的区别
- Java学习笔记之HashMap和Hashtable的区别
- Java学习之HashMap和Hashtable的区别(转)
- Hashtable和HashMap的区别
- HashTable和HashMap的区别
- Vector和ArrayList,Hashtable和HashMap,ArrayList和LinkedList的区别