首先ArrayList底层是连续内存存储数组,linkList底层是分散地址存储链表,都继承了List接口。在插入上LinkList更适合中间、头部部位插入数据。ArrayList数组更适合查询、尾部插入数据,因为数组是顺序存储。
ArrayList的默认初始容量为:10(n),扩容数为n+(n>>1),也就是说原来为10,扩容后就为15.
使用ArrayList在创建前先定义大小,防止一次就放入1000个,初始长度为10,导致频繁扩容
LinkList不建议用for进行遍历,而是建议采用iterator。因为for循环会对链表整体循环查询一遍,非常影响性能。
另外不要试图使用index0f等返回元素索引,并利用其进行遍历,使用indexl0f对list进行了遍历,当结果为空时会
遍历整个列表。