java中的容器
1.容器总分类

容器最开始的是vector和hashTable,最初设计如下,所有的方法都是使用syschronized来做同步的

后来,发现在大多数情况下,我们在使用的时候其实是单线程使用,所以不需要同步,于是又有了arrayList和hashMap,完全没有加锁

后期又有了Collections.synchronized.....类型的容器,如下图所示:

它可以实现将普通容器转化为同步容器,和hashtale及vector相比,基本没什么区别,也是加了syschronized锁

2.容器效率对比
写入:一般情况下,hashtable和hashmap,syschroizedHashmap区别不大,但是都高于ConcurrentHashMap。
读取:一般情况下,hashtable和hashmap,syschroizedHashmap区别不大,但是都低于ConcurrentHashMap。

浙公网安备 33010602011771号