ArrayList集合
底层原理
1.利用空参创建的集合,在底层创建一个默认长度为0的数组
2.添加第一个元素时,底层会创建一个新的长度为10的数组
3.存满时,会扩容1.5倍
4.如果一次添加多个元素,1.5倍还放不下,则新创建数组的长度以实际为准
源码分析
LinkedList集合
底层数据结构是双列表,查询慢,增删快,但是如果操作时首尾元素,速度也是极快的。
LinkedList本身多了很多直接操作首尾的特有API
源码分析
迭代器
iterator():生成一个迭代器对象,默认指向集合的0索引处
hasNext():判断当前指向的位置是否有元素
next():1.获取元素 2.移动指针