以下内容基于jdk1.7.0_79源码; 什么是LinkedList List接口的链表实现,并提供了一些队列,栈,双端队列操作的方法; LinkedList补充说明 与ArrayList对比,LinkedList插入和删除操作更加高效,随机访问速度慢; 可以作为栈、队列、双端队列 ...
modCount和expectedModCount是用于表示修改次数的,其中modCount表示集合的修改次数,这其中包括了调用集合本身的add方法等修改方法时进行的修改和调用集合迭代器的修改方法进行的修改。而expectedModCount则是表示迭代器对集合进行修改的次数。 设置expectedModCount的目的就是要保证在使用迭代器期间,LinkedList对象的修改只能通过迭代器且只能 ...
2017-07-07 10:57 0 2143 推荐指数:
以下内容基于jdk1.7.0_79源码; 什么是LinkedList List接口的链表实现,并提供了一些队列,栈,双端队列操作的方法; LinkedList补充说明 与ArrayList对比,LinkedList插入和删除操作更加高效,随机访问速度慢; 可以作为栈、队列、双端队列 ...
前言 LinkedList是一个以双向链表实现的List,它除了作为List使用,还可以作为队列或者堆栈使用。 LinkedList介绍 LinkedList继承关系 LinkedList简介 LinkedList是一个继承于AbstractSequentialList ...
在ArrayList,LinkedList,HashMap等等的内部实现增,删,改中我们总能看到modCount的身影,modCount字面意思就是修改次数,但为什么要记录modCount的修改次数呢? 大家发现一个公共特点没有,所有使用modCount属性的全是线程不安全的,这是 ...
在ArrayList中有个成员变量modCount,继承于AbstractList。 这个成员变量记录着集合的修改次数,也就每次add或者remove它的值都会加1。这到底有什么用呢? 先看下面一段测试代码: 在使用迭代器遍历集合的时候同时修改集合元素。因为ArrayList ...
modCount:记录当前集合被修改的次数 在所有的集合实现类中(Collection与Map中),都会有一个 modCount 的变量出现,它的作用就是记录当前集合被修改的次数。 下面以ArrayList 类进行说明: 添加方法: 删除方法 ...
modCount到底是干什么的呢 在ArrayList,LinkedList,HashMap等等的内部实现增,删,改中我们总能看到modCount的身影,modCount字面意思就是修改次数,但为什么要记录modCount的修改次数呢? 大家发现一个公共特点没有,所有使用modCount ...
在注释里已经说明了The number of times this list has been structurally modified. 记录的是list被修改的次数;Thi ...
ArrayList、LinkedList、HashMap中都有一个字段叫modCount。这个字段的用途,在ArrayList的父类AbstractList源码中有注释,说的很清楚: /** * The number of times this list has been ...