一 ArrayList
The ArrayList structure is a dynamic array. When the number of elements reaches a certain size, an expansion operation will occur, and the time complexity is O(N)
Unlike Vector, operations in ArrayList are not thread-safe! Therefore, it is recommended to use ArrayList in a single thread, and you can choose Vector or CopyOnWriteArrayList in multiple threads.
Detailed introduction: https://www.cnblogs.com/msymm/p/9872818.html
二 LinkedList
The underlying data structure of LinkedList is based on a two-way circular linked list, and no data is stored in the head node.