arrylist采用数组存储元素。
默认初始化为10长度的数组。
在添加元素时先判断是否需要扩容,扩容为 (old*3)/2+1
在遍历元素时,首先创建iterator会保存modcount,在获取next元素时会提交现在的modcount和原来记录的是否相等,如果不相等,抛出ConcurrentModificationExceptinon异常。
arrylist是非线程安全的。
本文详细介绍了ArrayList的工作原理,包括其数组存储方式、默认初始化长度为10、动态扩容机制((oldSize * 3) / 2 + 1)以及迭代器如何通过检查modCount来确保线程安全性,指出ArrayList本身是非线程安全的。
arrylist采用数组存储元素。
默认初始化为10长度的数组。
在添加元素时先判断是否需要扩容,扩容为 (old*3)/2+1
在遍历元素时,首先创建iterator会保存modcount,在获取next元素时会提交现在的modcount和原来记录的是否相等,如果不相等,抛出ConcurrentModificationExceptinon异常。
arrylist是非线程安全的。
1118
2680
1080

被折叠的 条评论
为什么被折叠?