首页 > 其他 > 详细

CopyOnWriteArraySet 源码分析

时间:2019-03-25 12:09:45      阅读:166      评论:0      收藏:0      [点我收藏+]

CopyOnWriteArraySet

/**
 * CopyOnWriteArraySet 是基于 CopyOnWriteArrayList 实现的,其迭代器是有序的,元素不可重复。
 * 所有的操作都委托给底层的 CopyOnWriteArrayList 处理。   
 */
public class CopyOnWriteArraySet<E> extends AbstractSet<E>
implements java.io.Serializable {
    private static final long serialVersionUID = 5457747651344034263L;

    /**
     *  封装的 CopyOnWriteArrayList 实例
     */
    private final CopyOnWriteArrayList<E> al;

    /**
     *  创建一个空的 CopyOnWriteArraySet 实例
     */
    public CopyOnWriteArraySet() {
        al = new CopyOnWriteArrayList<>();
    }

    @Override
    public boolean add(E e) {
        /**
         * 如果目标元素不存在,则将其添加到当前列表中【重复添加相同的元素并不会改变该元素在列表中的位置】。
         */
        return al.addIfAbsent(e);
    }

CopyOnWriteArraySet 源码分析

原文:https://www.cnblogs.com/zhuxudong/p/10592699.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!