Vector

前面讲了两个List的子类,一个linkedList,一个ArrayList,他们两个都是线程不安全的。那么现在来了解一下Vector(嘿嘿,其实我也没用过,不过还是看看源码吧),那么我还是先从实用的角度进行了解。顺带提一句,vetor可以说成是线程安全的arrayList。

1.还是先进入无参构造器


最终是进了这个构造器,就是先new一个数组,初始容量是10,capacityIncrement感觉就是为了让vector扩容2倍。而ArrayList是在第一次add的时候初始化。

(2)add(E e)方法。


其实和arraylist一样,唯独的不同就是加锁了。扩容的机制还是差不多的,一样是从头到尾的拷贝。

(3)remove(index)


就是将数组从index+1这个位置开始copy,copy开始的位置是index开始,将数组的最后一个位置置空。

其实大致看了下,发现基本都是arraylist的方法,然后加上sychronized就保证了线程安全。

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页