码迷,mamicode.com
首页 > 其他好文 > 详细

hashtable,hashMap,vector和ArrayList

时间:2016-04-14 01:15:22      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:

关于vector,ArrayList,hashMap和hashtable之间的区别

vector和ArrayList:  线程方面:  vector是旧的,是线程安全的  ArrayList是java2之后才有的,是非线程安全的  所以在多线程的情况下,最好使用vector,因为其线程安全,在只有一个线程的情况下最好使用ArrayList,由于它是非线程安全的,所以效率更高。  数据增长方面:  vector和ArrayList都可以在初始化的时候设置其初始值,在超过初始值之后,vector默认增长是按照初始值的2倍,而且可以自定义设置,ArrayList的相关文档上没说增长是多少,但是查看源码是初始值的1.5倍,好像不可以自定义设置。

hashtable和hashMap:    hashtable是旧的,是线程安全的  hashMap是java2之后才有的,是非线程安全的  hashMap是hashtable的一个轻量级实现  hashtable是继承自directory  hashMap是实现Map接口  hashMap去掉了hashtable的contains方法,增加了containskey和containsvalue方法  hashMap可以将值和键设置为null,hashtable不行。

hashtable,hashMap,vector和ArrayList

标签:

原文地址:http://www.cnblogs.com/Mindreader/p/5389361.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!