A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© fenzheng 中级黑马   /  2014-4-12 09:04  /  811 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Hashmap和Hashtable的区别在那些方面?

4 个回复

倒序浏览
1. hashtable不支持null键和null值,hashMap支持;
2. hashtable是线程同步的,效率较低,hashMap线程不同步,效率较快;
3. hashtable适用于多线程,单线程下用hashMap能获得更好的效率。

评分

参与人数 1技术分 +1 收起 理由
菜小徐 + 1

查看全部评分

回复 使用道具 举报
Map常用的子类:    |--Hashtable :内部结构是哈希表,是同步的。不允许null作为键,null作为值。      |--Properties:用来存储键值对型的配置文件的信息,可以和IO技术相结合。    |--HashMap : 内部结构是哈希表,不是同步的。允许null作为键,null作为值。      

评分

参与人数 1技术分 +1 收起 理由
ily521125 + 1

查看全部评分

回复 使用道具 举报
HashMap与Hashtable主要有四点不同:

一、在推出时间上,HashMap是JDK1.2之后推出的,属于新的操作类,而Hashtable是JDK1.0时推出,属于旧的操作类。

二、在性能上说,HashMap是采用异步处理方式,性能更高,而Hashtable是采用同步处理方式,性能较低。

三、在线程安全上来说,HashMap属于非线程安全操作类,而Hashtable属于线程安全的操作类。

四、空键key,HashMap允许将key设置为null,而Hashtable不允许将key设置为null,否则将出现Null Pointer Exception异常。

评分

参与人数 1技术分 +1 收起 理由
菜小徐 + 1

查看全部评分

回复 使用道具 举报
你这是基础测试题目吧!我也做到了!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马