juc并发包之CopyOnWriteArrayList
一. 线程不安全的ArrayList1、为什么说ArrayList是线程不安全的:add()操作抛出数组越界异常;add()操作会丢失元素;set()操作去修改元素,get()操作去获取元素时,可以读到新值也可能读到旧值,无法保证一致性。源码分析:public boolean add(E e) { //确定添加元素之后,集合的大小是否足够,若不够则会进行扩容 ensureCapacityInternal(size + 1); // Increments modCount!!
原创
2022-04-14 22:07:46 ·
644 阅读 ·
0 评论