arraylist :线程不安全
动态数组
修改元素慢\访问性能好
可用作列表
源码分析:
数据结构:数组
数组元素类型:object类型,可以存放所有类型数据
构造方法:
1.无参构造 默认容量10
2.有参构造 自定义
add方法:
先判断size+1,数组是否放得下
容量不足,增大为1.5倍(>>1),但不能超过规定的最大值
扩容步骤:
1.把原来的数组复制到另一个内存更大空间的数组中
2.把新元素添加到扩容以后的数组中
linkedlist:
双向链表
修改元素较快
可用作列表和队列 实现了两个接口: list Dqueue