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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

张高振

初级黑马

  • 黑马币:

  • 帖子:

  • 精华:

© 张高振 初级黑马   /  2012-1-5 19:12  /  1894 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

学集合类的时候,书上提到HashTable的方法是同步,HashMap的方法则不是,需要提供外部同步,于此类似的还有Vector和ArryList,而JAVA 5中又专门提供了Collections.synchronizedMap()方法和CopyOnWriteArrayList来解决线程安全的问题,这是为何,如果仅仅是为了线程安全那就用HashTable和Vector不就可以了吗?

3 个回复

正序浏览
其实你也可以去看看帮助文档  文档上写的也挺清楚,而且文档中已经表明:已过时
回复 使用道具 举报
同意楼上的说法,容器之间的区别通常归结为由什么在背后“支持”它们。也就是说,所使用的接口是由什么样的数据结构实现的。就好比,List的最佳选择是ArrayList,除非经常从表中间进行插入和删除,才去选择LinkedList的,但是,数据库中,很少在表中间插入和删除数据的。
回复 使用道具 举报
用老师常说的话说还不就是效率2字吗,显然HashTable和Vector比起HashMap和ArraayList来效率太低了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马